1. Entity Framework Nima?


DropCreateDatabaseIfModelChanges



Download 113,77 Kb.
bet27/30
Sana06.08.2021
Hajmi113,77 Kb.
#139916
1   ...   22   23   24   25   26   27   28   29   30
Bog'liq
dasturiy ininiringgg 180121104316

DropCreateDatabaseIfModelChanges: ushbu initializator ma’lumotlar bazasidagi jadvallarni aniqlangan modellarga muvofiqligini tekshiradi. Agar modellar jadvallarning ta’rifiga mos kelmasa, ma’lumotlar bazasi qayta tuziladi.

  • DropCreateDatabaseAlways: ushbu initializator har doim ma’lumotlar bazasini qayta tashkil qiladi.

    Biz initializatorlardan birini ishlatamiz. Buning uchun Seed metodini qayta aniqlashimiz kerak:

    1

    2

    3



    4

    5

    6



    7

    8

    9



    10

    11

    12



    13

    14

    15



    16

    17

    18



    19

    20

    21



    22

    23

    24



    25

    26

    27



    class MyContextInitializer : DropCreateDatabaseAlways

    {

        protected override void Seed(MobileContext db)



        {

            Phone p1 = new Phone {Name = "Samsung Galaxy S5", Price = 14000 };

            Phone p2 = new Phone {Name = "Nokia Lumia 630", Price = 8000 };     

            db.Phones.Add(p1);

            db.Phones.Add(p2);

            db.SaveChanges();

        }

    }

    public class Phone



    {

        public int Id { get; set; }

        public string Name { get; set; }

        public int Price { get; set; }

    }

    class MobileContext : DbContext



    {

        static MobileContext()

        {

            Database.SetInitializer(new MyContextInitializer());



        }

        public MobileContext() : base("DefaultConnection")

        { }

        public DbSet


    Phones { get; set; }

    }


    Aslida, tashabbuskor yuqorida ko‘rib chiqilgan sinflardan birida meros bo‘lib o‘tadi va konteks klassi tomonidan yoziladi: DropCreateDatabaseAlways.

    Barcha boshlang‘ich harakatlar Seed metodida amalga oshiriladi va ishga tushirishning o‘zi ma’lumotlar kontekstidan foydalanib ma’lumotlar bazasida oddiy ma’lumotlarni saqlashni o‘z ichiga oladi.

    Initializator ishlashi uchun uni chaqirish kerak. Initializatorni chaqirishning bir usulida uni konteks sinfining statik konstruktorida chaqirishni nazarda tutadi:

    1

    2

    3



    4

    static MobileContext()

    {

        Database.SetInitializer(new MyContextInitializer());



    }


    Download 113,77 Kb.

    Do'stlaringiz bilan baham:
  • 1   ...   22   23   24   25   26   27   28   29   30




    Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
    ma'muriyatiga murojaat qiling

    kiriting | ro'yxatdan o'tish
        Bosh sahifa
    юртда тантана
    Боғда битган
    Бугун юртда
    Эшитганлар жилманглар
    Эшитмадим деманглар
    битган бодомлар
    Yangiariq tumani
    qitish marakazi
    Raqamli texnologiyalar
    ilishida muhokamadan
    tasdiqqa tavsiya
    tavsiya etilgan
    iqtisodiyot kafedrasi
    steiermarkischen landesregierung
    asarlaringizni yuboring
    o'zingizning asarlaringizni
    Iltimos faqat
    faqat o'zingizning
    steierm rkischen
    landesregierung fachabteilung
    rkischen landesregierung
    hamshira loyihasi
    loyihasi mavsum
    faolyatining oqibatlari
    asosiy adabiyotlar
    fakulteti ahborot
    ahborot havfsizligi
    havfsizligi kafedrasi
    fanidan bo’yicha
    fakulteti iqtisodiyot
    boshqaruv fakulteti
    chiqarishda boshqaruv
    ishlab chiqarishda
    iqtisodiyot fakultet
    multiservis tarmoqlari
    fanidan asosiy
    Uzbek fanidan
    mavzulari potok
    asosidagi multiservis
    'aliyyil a'ziym
    billahil 'aliyyil
    illaa billahil
    quvvata illaa
    falah' deganida
    Kompyuter savodxonligi
    bo’yicha mustaqil
    'alal falah'
    Hayya 'alal
    'alas soloh
    Hayya 'alas
    mavsum boyicha


    yuklab olish