Merhaba arkadaşlar,
Code First yaklaşımı bir model ürettiğimizde, bu model içerisinde aynı zamanda da veri oluşturmak işimize yarayabilir. Bu yazıda code first kullanarak içerisinde veri olan bir modeli nasıl oluşturacağımızdan bahsedeceğim.
Visual Studio'da bir WinForm projesi oluşturalım. Solution explorer penceresinden proje adına sağ tıklayıp "Manage NuGet Packages.. " seçeneğine tıklayalım. Açılan pencereden code first kullanımı için gerekli olan "Entity Framework" paketini indirelim.
Tasarım aşamasında ana formumuza sadece listbox ekleyelim. Daha sonra projemize "Kisi" isimli bir class ekleyip içerisine ID,Ad ve Soyad alanları ekleyelim. Ad ve Soyad alanları listbox içinde görüntülemek için de toString() metodunu override edelim.
Kodumuza oluşturacağımız veritabanı context yapısı için KisiContext isimli bir class oluşturalım ve DbContext nesnesinden türetelim. Buraya DbSet<Kisi> tipinde property ekleyelim. FakeData ile veri oluşturmak için bize sunulan hazır bir paket bulunmaktadır. FakeData yardımıyla adres, telefon,yaş, tarih vb. verilerini kolaylıkla üretebilirsiniz. Manage NuGet Packages seçeneğiyle projemize FakeData paketini indirelim. Bu paket sayesinde örnek verilerimizi veritabanına basabiliriz. Bunun için bir KisiContext class yapısının içinde KisiOlusturucu isimli bir class oluşturalım ve miras almak için CreateDatabaseIfNotExists<KisiContext> kodunu kullanalım. Bu yapı ile bize class içerinde override edebileceğimiz InitializeDatabase ve Seed metotlarını kullanmamıza olanak sağlayacaktır. InitializeDatabase, database oluşurken çalışır. Seed metodu ise database oluşturulduktan sonra çalışır. FakeData oluşturmak için kuracağımız yapıyı Seed metodu içinde şu şekilde tanımlayacağız :
KisiContext yapısında oluşturduğumuz KisiOlusturucu kullanmak için şu şekilde tanımlayacağız :
Context içerisinde işlemimizi tamamladıktan sonra app.config içerisinde connection string ifadesini oluşturalım. Burada dikkat etmemiz gereken bu tanımlamanın configSections etiketinin dışında yapılmasıdır.
Formumuzun load olayına gidip context nesnemizi oluşturalım vev oluşturduğumuz verileri listbox ile gösterelim.
Bu işlemleri tamamladıktan sonra kodumuzu çalıştırabiliriz. Kodumuzu çalıştırdıktan sonra oluşan ekran görüntüsü şu şekilde olacaktır:
Hiç yorum yok:
Yorum Gönder