‫۱ سال و ۷ ماه قبل، شنبه ۱۷ دی ۱۴۰۱، ساعت ۱۴:۳۴
بنا بر گفته یکی از دوستان که از این روش استفاده کرده بود و نتیجه خوبی گرفته بود.من این  نوع متغیر رو بدون استفاده از تزریق وابستگی در کلاس کانتکس new دستی کردم و تو این مدت باهاش کار کردیم به درستی جواب داده.
‫۱ سال و ۸ ماه قبل، یکشنبه ۱۳ آذر ۱۴۰۱، ساعت ۱۶:۱۴
برای استفاده از مقادیر کوکی در کلاس هایی نظر DbContext چکاری باید انجام داد؟ مثلا میخواهیم مقدار یک کوکی را بخوانیم تا در Gloabl Query Filter استفاده کنیم. در این حالت این اتفاق زیاد رخ میدهد که کانتکسی در دسترس نیست
‫۱ سال و ۱۰ ماه قبل، پنجشنبه ۲۱ مهر ۱۴۰۱، ساعت ۲۳:۵۳
در روزهای اخیر مشکلات متعددی برای خود و دوستانم مشاهده کردم که در حین کار با مخزن گیتهاب با خطای زیر مواجه میشدند:
OpenSSL SSL_connect: Connection was reset in connection to github.com:443

جهت رفع این موضوع کامند زیر در cmd بزنید:
git config --global http.sslBackend schannel
در صورتی که همچنان موضوع ادامه داشت برای هر پروژه وارد دایرکتوری مخفی گیت در مسیر ریشه پروژه شده و فایل config را باز کرده و در انتهای آن عبارات زیر را اضافه کنید:
[http]
        sslBackend = schannel

‫۱ سال و ۱۰ ماه قبل، یکشنبه ۱۰ مهر ۱۴۰۱، ساعت ۱۷:۴۳
نکته تکمیلی: برای کارآمدی بهتر لیست‌ها و جداول به جای استفاده مستقیم از foreach یا for از Virtualize استفاده نمایید:
<Virtualize Items="cars" Context="car">
  <tr>
    <td>@car.Id</td>
    <td>@car.Name</td>
    <td>@car.Cost</td>
  </tr>
</Virtualize>
برای پروژه ما که در یک جدول نزدیک 5 هزار رکورد را نمایش میداد دو یا سه ثانیه طول میکشید که دیتای آماده را نمایش دهد با تغییر این بخش از کد الان بدون وقفه دیتا را نمایش میدهد
جهت ثبت و دریافت داده‌ها من از MediateR استفاده کردم.
در مرحله اول context را مطابق الوی گفته شده ایجاد کردم:
services.AddDbContextFactory<ApplicationDbContext>(options => options.UseSqlServer(connectionString));
services.AddScoped<IunitOfWork>(serviceProvider =>
        serviceProvider.GetRequiredService<IDbContextFactory<ApplicationDbContext>>().CreateDbContext());
سپس با توجه به اینکه سرویس‌ها و IunitOfwork هم داخل هندلرها تعریف می‌شوند تنها اینترفیس Idisposable به  IunitOfwork   نسبت داده شده است:
public interface IUnitOfWork : IDisposable
و سپس 
@inherits  OwningComponentBase<IMediator>

تا به حال مشکلی در اجرا دیده نشد تا اینکه در حالت OnParameterAsync که دو مرتبه پشت سر هم اجرا میشود با خطاهای زیر روبرو شد:
 A second operation was started on this context instance before a previous operation completed. This is usually caused by different threads concurrently using the same instance of DbContext.
 For more information on how to avoid threading issues with DbContext

 System.ObjectDisposedException: Cannot access a disposed object.
      Object name: 'IServiceProvider'.
در صورتی که اگر با یک فلگ کنترل شود که در مرتبه‌های بعدی اجرا نشود مشکلی نیست.
در این حالت چند سوال مطرح میباشد:
1- آیا استفاده از MediateR به این شکل صحیح است؟ و اینکه استفاده از OwningComponentBase برای آن تاثیری دارد یا خیر اینکه مستقیم هم Inject شود کفایت میکند.
2- به جهت اینکه Onparameter دوبار صدا زده میشود. نحوه واکشی دیتا در این حالت چگونه است؟