Ef Core یک ORM هست که اومده تا برنامه نویسی رو برای ما ساده تر کنه. الان میخوایم درباره Cartesian Explosion صحبت کنیم. اصلا اینی که نوشتم چیه؟ ! Cartesian Explosion مرتبط با join زدن های ماست. وقتی ما یک عملیات join انجام میدیم، ستون های یکی از جداول ما به تعداد X بار توی joined table تکرار میشن. به طور مثال کد بالا رو در نظر بگیرید. روی جدول customer ها، اومدیم include زدیم تا آدرس ها رو بدست بیاریم (وقتی include میزنیم در اصل داریم از left join استفاده می کنیم) خب، کویری که توسط Ef برای ما تولید میشه رو در زیر میتونید ببینید. خب همون طوری که میبینید، ستون های جدول customer ، بار تکرار شدن. (الان ستون خاصی نداره و فقط کلیدش هست) خب حالا فکر کنید که دارید با یک مجموعه داده پیچیده کار میکنید و چندین include هم دارین می زنین. وضعیت وحشتناکی پیش میاد. مگ نه؟ ! این وضعیت وحشت ناک رو cartesian explosion میگن. یه راه حل دم دستی برای این قضیه اینه که بیاید customer رو جدا لود کنید، بعد address هارو هم جدا لود کنید و بر اساس قابلیت Fix - Up در Ef Core ، ارتباط بین دیتا ها به درستی ست میشه. ولی توی Ef Core ، یک قابلیت جدید اومد تحت عنوان split queries که می تونید دربارش توی این (مقاله خودم) بخونید. موفق باشید.