DEV Community

Cover image for .Net 6.0 da Entity Framework bila ishlash
Jamoliddin2003
Jamoliddin2003

Posted on

.Net 6.0 da Entity Framework bila ishlash

Ef Core bilan ishlash uchun quyidagi package lar kerak bo'ladi

  • Microsoft.EntityFrameworkCore
  • Microsoft.EntityFrameworkCore.Design
  • Microsoft.EntityFrameworkCore.Tools
  • Microsoft.EntityFrameworkCore.Sqlite - buning o'riniga sql yoki postgersql va boshqa databaselardan foydalanish mumkin.

Buning uchun bizga 1 ta User classi va 1ta DbContext classi yetarli bo'ladi

  1. 1 ta User classi yaratamiz
 public class User
    {
        public int Id { get; set; }
        public string Name { get; set; }
        public string Phone { get; set; }
    }
Enter fullscreen mode Exit fullscreen mode

2.UserDbContext classi quyidagicha

 public class UserDbContext : DbContext
    {
        DbSet<User> Users { get; set; }
        protected override void OnConfiguring(DbContextOptionsBuilder options)
        {
             options.UseSqlite("Data source = user.db");
        }
    }
Enter fullscreen mode Exit fullscreen mode

program.cs da esa
var context = new UserDbContext(); kabi 1 ta obyekt olamiz

dotnet ef migrations add name - terminalga shu komandani yozsak EF Core orqali table ochib beradi. Bunda name sifatida ixtiyoriy nom tanalanadi.
Database ochilganiga ishonch hosil qilganimizdan so'ng uni saqlashimiz uchun dotnet ef database update comandasi yoziladi .

Databasedagi tablega create qilayotgan payda obyekt qo'shish quyidagicha amalga oshiriladi .
Eslatma - Har doim database - ga o'zgartirish kiritgandan so'ng dotnet ef migrations add name va ishonch hosil qilgandan so'ng dotnet ef database update comandalarini terminalga yozish zarur

  protected override void OnModelCreating(ModelBuilder builder)
        {
            base.OnModelCreating(builder);
            builder.Entity<User>().HasData(new User()
            {
                Id = 1,
                Name = "Jamoliddin",
                Phone = "937072078",
            });

        }
Enter fullscreen mode Exit fullscreen mode

Top comments (0)