مبانی چارچوب نهاد: ساده سازی دسترسی به داده ها در دات نت

معرفی
تصور کنید در حال ساخت یک کتابخانه بزرگ از کتاب هستید. سازماندهی، فهرست نویسی و یافتن سریع اطلاعات می تواند یک چالش باشد. حال، Entity Framework (EF) را به عنوان یک کتابدار هوشمند در نظر بگیرید که این فرآیند را برای برنامه های دات نت شما آسان می کند.
Entity Framework یک Object-Relational Mapper (ORM) است که به توسعه دهندگان اجازه می دهد تا با استفاده از اشیاء دات نت با یک پایگاه داده کار کنند و نیازی به نوشتن بیشتر کدهای دسترسی به داده ها را از بین ببرد. بیایید اصول Entity Framework را بررسی کنیم و بفهمیم که چرا این ابزار قدرتمند است.
Entity Framework چیست؟
Entity Framework یک فناوری مایکروسافت برای دات نت است که نگاشت بین اشیاء دامنه و جداول پایگاه داده رابطه ای را خودکار می کند. با آن می توانید:
- مدل داده را به عنوان کلاس های C# تعریف کنید.
- پرس و جو و دستکاری داده ها با استفاده از LINQ (پرسش یکپارچه زبان).
- مدیریت نسخهسازی پایگاه داده از طریق مهاجرت.
اجزای کلیدی چارچوب موجودیت
- DbContext: نقطه اصلی تعامل با Entity Framework است. اتصال به پایگاه داده را مدیریت می کند و برای پرس و جو و ذخیره داده ها استفاده می شود.
public class LibraryContext : DbContext
{
public DbSet Books { get; set; }
public DbSet Authors { get; set; }
}
- DbSet: مجموعه ای از موجودیت ها را در زمینه، به عنوان مثال، یک جدول در پایگاه داده را نشان می دهد.
public class Book
{
public int BookId { get; set; }
public string Title { get; set; }
public int AuthorId { get; set; }
public Author Author { get; set; }
}
- Entity Models: کلاس هایی هستند که جداول پایگاه داده را نشان می دهند. آنها به ستون هایی در پایگاه داده نگاشت می شوند.
پیکربندی پایه
برای شروع استفاده از Entity Framework، باید DbContext را پیکربندی کنید. در اینجا مثالی از نحوه پیکربندی اتصال پایگاه داده آورده شده است:
public class LibraryContext : DbContext
{
public LibraryContext(DbContextOptions options)
: base(options)
{
}
public DbSet Books { get; set; }
public DbSet Authors { get; set; }
}
و در فایل کانفیگ:
{
"ConnectionStrings": {
"LibraryDatabase": "Server=(localdb)\\mssqllocaldb;Database=LibraryDb;Trusted_Connection=True;"
}
}
استعلام داده ها
با Entity Framework، میتوانید دادهها را با استفاده از LINQ پرسوجو کنید، که روشی قدرتمند و گویا برای نوشتن پرسوجوها است:
using (var context = new LibraryContext())
{
var books = context.Books
.Include(b => b.Author)
.Where(b => b.Title.Contains("C#"))
.ToList();
}
مهاجرت ها
مهاجرت به شما این امکان را می دهد که تغییرات طرحواره پایگاه داده را در طول زمان مدیریت کنید. شما می توانید با استفاده از دستور یک مهاجرت ایجاد کنید:
dotnet ef migrations add InitialCreate
و سپس مهاجرت ها را به پایگاه داده اعمال کنید:
dotnet ef database update
نتیجه
Entity Framework یک ابزار ضروری برای توسعه دهندگان دات نت است که می خواهند دسترسی به داده ها را ساده کرده و بیشتر بر منطق تجاری برنامه های خود تمرکز کنند. با قدرت نقشه برداری، پرس و جوهای LINQ و انتقال پایگاه داده، توسعه برنامه را به یک کار کارآمدتر و لذت بخش تبدیل می کند.