لود نشدن ( یا شدن اضافی ) Navigation Property ها در EF Core

بپرسید

0

{{ digitTrunc(content.likes) }}

دوستان سلام ، 

 

در حال استفاده EF Core 2.2  هستم و به مشکل زیر برخوردم.

فرض کنید دو تا کلاس داریم : Post و Blog ( از مثال ساده استفاده کردم که دیگه همه رابطه شون رو می دونیم ! )

هر دو به هم Navigation Property دارند. ( post.Blog و Blog.Posts )

در حال عادی باید Eager Loading فعال باشه و Post.Blog  لود بشه ( که نمیشه !)

میایم از Include استفاده می کنیم ، این بار مشکل اول حل میشه ولی به دلیل fixup که در زمان ارسال اطلاعات ( نه خوندن از دیتابیس )  رخ میده ، هم Post.Blog لود میشه ، هم Post.Blog.Posts . 

و می بینیم که حجم بسیار زیادی از اطلاعات برگردونده میشه ، که می ترسم به مشکل performance بخورم.

ضمیمه رو ببینید ، قرار بوده فقط 4 تا رکورد ساده برگردونه !

 

++ حالا راه حل شما چیه ؟ راهی هست که این fixup صورت نگیره ( که ظاهرا با جستجوهای من نیست)

راه دیگه که دیدم استفاده از DTO و ساختن ViewModel هستش که خیلی جاها پیشنهاد داده بودن.

 

ممنون از راهنماییتون.

دوره های شبکه، برنامه نویسی، مجازی سازی، امنیت، نفوذ و ... با برترین های ایران

پاسخ ها به این سوال

پاسخ ها به این سوال

{{ digitTrunc(post.likes) }}

این پست در تاریخ {{ dateString(new Date(post.deleteDate)) }} توسط {{ post.deletedByUser }} حذف شده است.

دلیل حذف: {{ post.deleteReason ?? 'نامشخص' }}

{{ err }}
{{ post.userAchivements.rhodiumAchievements }}
{{ post.userAchivements.platinumAchievements }}
{{ post.userAchivements.goldAchievements }}
{{ post.userAchivements.silverAchievements }}
{{ post.userAchivements.bronzeAchievements }}
{{ timeSince(new Date(post.date)) }} قبل

برای ثبت پاسخ خود در وب سایت وارد حساب کاربری خود شوید
قابلیت ارسال مطلب توسط مدیریت سایت غیر فعال شده است