حتماً پیش آمده که چرا هر دو این دستورات در عمل یک کار انجام میدهند اما هردو در دستورات EF وجود دارند. پاسخ این سوال در رفتار این دو متد با دیتا مشهود هست.
دستور First
اگر رکوردی را با شرطی که شما اعلام کردین پیدا نکند، یک Exception
ایجاد میکند که شما با هندل کردن آن منطق برنامه خود را پیش میبرید.
اما دستور FirstOrDefault
در صورتی که با توجه به شرط اعلامی شما رکوردی پیدا نکند، مقدار null
آبجکت درخواستی را برمیگرداند که شما باید آبجکت برگشتی را ارزیابی کنید که null
نباشد و ادامه داستان را پیش ببرید.