Tracking در مقابل AsNoTracking
Tracking تغییرات موجودیتها را نگه میدارد؛ AsNoTracking فقط برای خواندن داده است و سریعتر اجرا میشود.
| ویژگی | Tracking | AsNoTracking |
|---|---|---|
| Change Tracking | دارد | ندارد |
| سرعت | کمتر | بیشتر |
| مصرف حافظه | بیشتر | کمتر |
| مناسب Update | بله | خیر |
| مناسب گزارش | خیر | بله |
کِی از Tracking استفاده کنیم؟
وقتی قرار است داده را ویرایش کنید.
کِی از AsNoTracking استفاده کنیم؟
برای گزارشها و صفحات فقط خواندنی.
مثال Tracking
var users = context.Users .AsNoTracking() .ToList();
مثال AsNoTracking
فراموش کردن AsNoTracking در Queryهای ReadOnly.
اشتباه رایج
فراموش کردن AsNoTracking در Queryهای ReadOnly.
جمعبندی
Read → AsNoTracking
Update → Tracking
