Önce yazımda basit bir örnek yapmıştım sadece View ve Controller kullanarak bir sayfa oluşturmuştuk.Bu yazımda yapacağım örnekte Model'e ihtiyacımız olacak.Bu örnek öğrenci ve dersleri kaydedip hangi dersi kimin alacağını tutan bir veritabanına sahip proje olacak.
Önceki yazımı buradan okuyabilirsiniz.Eğer projemizi açtıysak proje ismine sağ tıklayıp Add -> New Item deyip
Önceki yazımı buradan okuyabilirsiniz.Eğer projemizi açtıysak proje ismine sağ tıklayıp Add -> New Item deyip
Data'yı seçtıkten sonra ADO.NET Entity Data Model'i seçip Model ismimizi yazıp Add diyelim.
- Code first yaklaşımını şu şekilde açıklayayım.Örneğin ders.cs adında kendim bir sınıf oluşturup içine public int ID; public string AdSoyad; yazdığımda database'de dersler diye bir sınıf oluşturur ve içerisine bu kolonları ekler, sql server'ı açıp eklemek zorunda kalmam.Yapacağım şey kodu C#'ta yazmak ,böylece veritabanı oluşacak.
- Database First yaklaşımı ise veritabanını sql serverda oluşturturduktan sonra,C#'ta karşılığını Entity Framework gerçekleştirir.Yani Database'de dersler diye tablo oluşturup kolonlarını oluşturduktan sonra Entity Framework benim yerime sınıfını oluşturur.
Proje için Database first seçelim.
Şimdi SQL SERVER'ı açalım. Local'de çalışacağım.Bu yüzden Bilgisayar adınızı yazın ve Windows Authentication'ı seçin
Kullanıcıdan alacağımız verileri saklamak için database oluşturalım.
Database oluştuktan sonra tabloları oluşturmalıyız.İki tablo bu örnek için yeterli olacaktır.
NOT: ID 'yi set primary key yapıp yukardaki ayarları yapın.ID'nin birer birer artmasını sağladık.
Database Diagramda tabloları ilişkilendirelim.
Daha sonra projemize geri dönüp New Connection' a tıklayalım.Server Name için . koyalım.Bu localde olduğumuzu söyler.Oluşturduğumuz database'i seçelim.Test Connection'la işlemin başarılı olduğunu gördük.
Burada tablolarımızı işaretliyelim.
Modelimiz projeye geldi.Şimdi Controllerlarımızı ekleyelim.Ders ve Öğrenci için 2 tane controller ekleyelim.Ama önce projeyi derleyelim ki modeli görsün.
Aynı şekilde öğrenci tablosu içinde yapalım.Controller oluştuktan sonra View klasöründede ders ve ogrencis klasörü oluştu.(sonuna s ekler).Klasörlere sağ tıklayıp add->view deyip Index ve Create sayfalarını oluşturalım. İsterseniz Details,Delete,Update sayfalarınıda oluşturabilirsiniz. Bu işlemlere CRUD(Create,Read,Update,Delete) işlemleri denir.
ogrencis/Index sayfasında küçük bir değişiklik yaparak ders_id yerine ders adını yazdırmak daha anlaşılır olacaktır.
Böylece dersleri öğrencilerin üstüne kaydetmiş olduk .
Merhabalar. Öğrenciye ders eklerken dersid yerine ders ismini nasıl gösterebiliriz acaba. Teşekkürler
YanıtlaSilForeach ile gezerken item.ders.ders_id yerine item.ders.ders_adi şeklinde yazarak gösterebiliriz.Şuradan bakabilirsin http://hizliresim.com/8DWkvA
Silİşe yarar bilgiler için tşkrler
YanıtlaSil