آموزش Fluent API در EF Core

آموزش Fluent API در EF Core
آموزش Fluent API در EF Core

Fluent API چیست؟

در روش کد فرست یا Code First بصورت پیش فرض کلاس ها با استفاده از مجموعه ای از قراردادهای گنجانده شده در EF به جداول نگاشت می شود. به طور مثال بصورت پیش فرض در روش کد فرست در EF Core یک پراپرتی از نوع string به varchar(MAX) در دیتابیس نگاشت می شود.با این حال، گاهی اوقات نمی‌توانیم یا نمی‌خواهیم از آن قراردادها پیروی کنیم و نیاز داریم که موجودیت‌ها را به چیزی غیر از آنچه که قراردادها دیکته می‌کنند، نگاشت کنیم.

برای آموزش Code First در EF Core می توانید از این لینک استفاده کنید.

برای این که EF را به چیزی غیر از قراردادها پیکربندی کنیم دو راه وجود دارد:

چرا در روش کد فرست نباید از annotation ها در EF Core استفاده کنیم؟

  • استفاده از annotation ها باعث کثیفی کد خواهند شد
  • استفاده از annotation ها خوانایی کد را پایین می آورد
  • استفاده از annotation ها توسعه و نگه داری کد را سخت خواهد کرد

چرا در روش کد فرست باید از Fluent API در EF Core استفاده کنیم؟

  • استفاده از Fluent API ها خوانایی کد را بالا می برد
  • استفاده از Fluent API ها باعث تسریع روند پروژه خواهد شد
  • استفاده از Fluent API ها توسعه و نگه داری کد را آسان می کند
  • انواع سناریوهای نگاشت را می توان با Fluent API انجام داد

به طور کل annotation ها فقط زیرمجموعه ای از عملکرد Fluent Api را پوشش می دهند، بنابراین سناریوهای نگاشتی وجود دارد که با استفاده از annotation نمی توان به آنها دست یافت که این سناریو ها باید با Fluent Api ها نگاشت شوند.

سر فصل های آموزش Fluent API در EF Core

  • نحوه ایجاد یک Fluent API و آشنایی با ساختار آن
  • جداسازی پیاده سازی های Fluent API از context
  • بررسی انواع متدهای Fluent API و کاربردهای آن
  • ایجاد رابطه یک به یک(One-to- One) با استفاده از Fluent APi
  • ایجاد رابطه یک به چند(One-to-Many) با استفاده از Fluent APi
  • ایجاد رابطه چند  به چند(Many -to-Many) با استفاده از Fluent APi
  • ایجاد رابطه Self Relation با استفاده از Fluent API
  • انجام Seed Data در Fluent API
  • نحوه اعمال کردن ایندکس ها بوسیله  Fluent API

جهت مشاهده این آموزش به وب سایت آموزش برنامه نویسی کدسل در لینک زیر مراجعه نمایید:

دوره آموزش Fluent API در EF Core