Entity Framework Core क्या है और इसकी ज़रूरत क्यों है
Entity Framework Core (EF Core) Microsoft द्वारा विकसित .NET प्लेटफ़ॉर्म के लिए एक आधुनिक ऑब्जेक्ट-रिलेशनल मैपर (ORM) है। यह डेवलपर्स को .NET ऑब्जेक्ट्स का उपयोग करके डेटाबेस के साथ काम करने की सुविधा देता है और डेटा एक्सेस कोड लिखने की अधिकांश ज़रूरत को खत्म करता है।
EF Core Entity Framework का एक हल्का, विस्तार योग्य और क्रॉस-प्लेटफ़ॉर्म संस्करण है। यह SQL Server, SQLite, PostgreSQL, MySQL, Oracle और अन्य सहित कई DBMS का समर्थन करता है।
EF Core की मुख्य विशेषताएं:
- मॉडल के आधार पर डेटाबेस स्कीमा का स्वचालित निर्माण और अपडेट (Code First)
- LINQ (Language Integrated Query) का उपयोग करके डेटाबेस क्वेरी निष्पादित करना
- ऑब्जेक्ट्स में बदलावों का स्वचालित ट्रैकिंग और डेटा अपडेट के लिए SQL कमांड जनरेट करना
- डेटाबेस स्कीमा बदलावों के प्रबंधन के लिए माइग्रेशन सपोर्ट
- एंटिटीज़ के बीच संबंधों का समर्थन (एक-से-एक, एक-से-अनेक, अनेक-से-अनेक)
- संबंधित डेटा की लेज़ी, ईगर और एक्सप्लिसिट लोडिंग
Entity Framework Core की स्थापना (इंस्टॉलेशन)
EF Core को NuGet Package Manager के माध्यम से स्थापित किया जाता है। Python के विपरीत, यहाँ dotnet add package या Visual Studio पैकेज मैनेजर का उपयोग किया जाता है।
.NET CLI के माध्यम से स्थापना:
dotnet add package Microsoft.EntityFrameworkCore
dotnet add package Microsoft.EntityFrameworkCore.SqlServer
dotnet add package Microsoft.EntityFrameworkCore.Tools
PostgreSQL (Npgsql) के लिए स्थापना:
dotnet add package Npgsql.EntityFrameworkCore.PostgreSQL
SQLite के लिए स्थापना:
dotnet add package Microsoft.EntityFrameworkCore.Sqlite
MySQL के लिए स्थापना:
dotnet add package Pomelo.EntityFrameworkCore.MySql
कोड उदाहरण के साथ त्वरित शुरुआत
चलिए किताबों के डेटाबेस के साथ काम करने के लिए एक सरल कंसोल एप्लिकेशन बनाते हैं।
1. डेटा मॉडल बनाएं:
public class Book
{
public int Id { get; set; }
public string Title { get; set; }
public string Author { get; set; }
public int Year { get; set; }
public decimal Price { get; set; }
}
public class Author
{
public int Id { get; set; }
public string Name { get; set; }
public List<Book> Books { get; set; } = new();
}
2. डेटाबेस कॉन्टेक्स्ट बनाएं:
public class LibraryContext : DbContext
{
public DbSet<Book> Books { get; set; }
public DbSet<Author> Authors { get; set; }
protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
{
optionsBuilder.UseSqlite("Data Source=library.db");
}
}
3. डेटा के साथ काम करने के लिए EF Core का उपयोग करें:
using var context = new LibraryContext();
context.Database.EnsureCreated(); // अगर नहीं है तो DB बनाएं
// डेटा जोड़ना
var author = new Author { Name = "प्रेमचंद" };
author.Books.Add(new Book { Title = "गोदान", Year = 1936, Price = 500m });
author.Books.Add(new Book { Title = "गबन", Year = 1931, Price = 400m });
context.Authors.Add(author);
context.SaveChanges();
// डेटा पढ़ना
var books = context.Books
.Where(b => b.Year > 1900)
.OrderBy(b => b.Year)
.ToList();
foreach (var book in books)
{
Console.WriteLine($"{book.Title} ({book.Year})");
}
Entity Framework Core के मुख्य तरीके और फंक्शन
1. Add
विवरण: कॉन्टेक्स्ट में Added स्थिति में एक नई एंटिटी जोड़ता है। SaveChanges() कॉल करने पर INSERT कमांड निष्पादित होगी।
पैरामीटर:
object entity— जोड़ने के लिए एंटिटी का इंस्टेंस
उदाहरण:
var पुस्तकालय में भी
Swift में PDF रिपोर्ट जनरेशन: PDFKit और UIPrintPageRenderer
Rust में डेटा सत्यापन: विश्वसनीय कोड के लिए लाइब्रेरी और दृष्टिकोण
Swift (iOS/macOS) के लिए OAuth क्लाइंट: OAuthSwift लाइब्रेरी
C# (.NET) के लिए HTTP क्लाइंट: वेब अनुरोधों के लिए शीर्ष लाइब्रेरी
जावा के लिए डिपेंडेंसी इंजेक्शन कंटेनर: Spring IoC, Google Guice और Dagger