بازخوردهای دوره
افزونه‌ای برای کپسوله سازی نکات ارسال یک فرم ASP.NET MVC به سرور توسط jQuery Ajax
این افزونه خروجی ساده متنی داره. اگر نیاز به بازگرداندن اطلاعات بیشتر و ساختار یافته‌ای هست، باید خروجی JSON براش طراحی کنید و بعد در سمت jQuery Ajax این ساختار مدنظر رو پردازش کنید. مثلا ساختاری بر اساس خواصی مانند لیست خطاها، لیست پیام‌ها و وضعیت عملیات. بعد قسمت complete افزونه فوق باید کلا بازنویسی شود.
نظرات مطالب
تفاوت ViewData و ViewBag و TempData و Session در MVC
سلام؛ مواقعی که سیستم ناوبری و منوی برنامه بصورت داینامیک و RoleBase  هست و به ازای هر کاربر منوی خاصی فعال میشود. برای اینکه کاربر در ابتدای ورود به سیستم لیست منوی مربوط به خود را از دیتابیس واکشی کند و تا زمان خروج این لیست در دسترس بماند و نیاز به مراجعه مجدد به دیتابیس نباشد چه روشی پیشنهاد میشود.
نظرات مطالب
Angular CLI - قسمت اول - نصب و راه اندازی
روش یافتن لیست بسته‌های سراسری نصب شده:
 npm list -g --depth=0

روش یافتن لیست بسته‌های سراسری نصب شده‌ی تاریخ مصرف گذشته:
 npm outdated -g --depth=0

روش به روز رسانی یک بسته‌ی سراسری خاص:
 npm update -g <package>


روش به روز رسانی تمام بسته‌های سراسری نصب شده:
 npm update -g
نظرات مطالب
سفارشی سازی ASP.NET Core Identity - قسمت پنجم - سیاست‌های دسترسی پویا
برای افزودن لیست Claims کاربر موجود در بانک اطلاعاتی به لیست Claims کاربر وارد شده‌ی توسط اکتیو دایرکتوری، باید از یک IClaimsTransformation سفارشی استفاده کنید تا این نگاشت را انجام دهد (نمونه‌اش در مطلب « سفارشی سازی ASP.NET Core Identity - قسمت چهارم - User Claims » به نحو دیگری استفاده شده‌است):
public class ApplicationClaimsTransformation : IClaimsTransformation
{
}
پیاده سازی کامل آن در اینجا
و برای ثبت آن:
services.AddScoped<IClaimsTransformation, ApplicationClaimsTransformation>();
نظرات مطالب
استفاده از pjax بجای ajax در ASP.NET MVC
من Layout را در View به این شکل مقدار دهی می‌کنم : Layout="" . که در این حالت pjax به خوبی جواب می‌دهد. البته من اون دو خط اسکریپت فایل‌های js و اون تکه کد را در view  قرار دادم. من فقط از pjax برای پیج بندی لیست اطلاعاتم فقط در این view میخوام استفاده کنم.
اما من میخوام وقتی view خود را در Layout میگذارم جواب دهد.
لیست محصولات من در یک Partial قرار دارد که این Partial هم در View هست .
نظرات مطالب
استفاده از خواص راهبری در EF Code first جهت ساده سازی کوئر‌ی‌ها
من وقتی از IList استفاده میکنم برای تعریف خواص راهبری زمانی که اون رو به یک گرید بایند میکنم AddNewRow گرید کار نمیکنه(devExpress)با جستجو و تعریف bindingList به جای لیست مشکل حل شد.
میخواستم ببینم تعریف خواص راهبری از نوع bindingList مشکلی ندارد؟
فقط binginList متد AddRange ندارد و برای اضافه کردن چند لیست به آن باید از foreach استفاده کرد.
نظرات مطالب
خواندن اطلاعات از سرور و نمایش آن توسط Angular در ASP.NET MVC
با تشکر 
من از این روش در یک view استفاده کردم (در اینجا هدف نمایش لیست کاربران بود) ولی مشکل من این هست که وقتی این view برای کاربر نمایش داده میشه چون انگولار اون رو کش میکنه با افزودن کاربر جدید این لیست تا درخواست مجدد از سرور بروز نمیشه.
میخواستم بدونم آیا با واکشی اطلاعات توسط http$ مشکلم حل میشه؟
یا میشه یک view در انگولار کش نشود و به هر با route به اون view مورد نظر از سرور فراخوانی بشه
نظرات مطالب
EF Code First #12
فرض کنید که بخواهیم در این مثال این کارها رو انجام بدیم:
  1. در یک صفحه لیست کالاها و دسته بندی اونها رو نشون بدیم.
  2. کاربر قادر باشه در همون صفحه مشخصات یک کالا شامل گروه کالا یا نام کالا رو ویرایش کنه.
در این حالت برای ویرایش آیا بایستی از همون وهله DbContext که جهت گرفتن لیست کالاها استفاده شده، استفاده بشه؟ یا برای ویرایش بایستی یک وهله جدید DbContext ساخته بشه؟
نظرات مطالب
اصول طراحی شی گرا SOLID - #بخش اول اصل SRP
تنها دلیل تغییر کلی این کلاس در آینده، تغییر خاصیت‌های شیء کارمند است. بنابراین اصل تک مسئولیتی را نقض نمی‌کند. اگر این کلاس برای مثال دو Select داشت که یکی لیست کارمندان و دیگری لیست نقش‌های سیستم را بازگشت می‌داد، در این حالت تک مسئولیتی نقض می‌شد. ضمنا این نوع طراحی تحت عنوان الگوی مخزن یا لایه سرویس و امثال آن، یک طراحی پذیرفته شده و عمومی است. اگر قصد دارید که کوئری‌های خاص آن‌را طبقه بندی کنید می‌شود مثلا از Specification pattern استفاده کرد.
نظرات مطالب
MVC vs 3-Tier Pattern
لایه business Logic  در واقع لایه پیاده سازی Business پروژه شما می‌باشد با یک مثال عرض می‌کنم فرض کنید در لایه UI شما لازم دارید یک گزارش از لیست مشتریانی که بالاترین خرید را در 6 ماه گذشته داشته اند و لیست تراکنش مالی آنها را بدست آورید.برای این مورد شما توسط کلاسهای و متدهای لازم ، در لایه Business Logic  این عملیات را پیاده سازی می‌کنید.