Veritabanının Tohumunu Oluşturmak için Kod İlk Geçişlerini Kullanma

Tamamlanan Projeyi İndir

Bu bölümde, test verileriyle veritabanının tohumunu oluşturmak için EF'te Code First Migrations kullanacaksınız.

Araçlar menüsünde NuGet Paket Yöneticisi'ni ve ardından Paket Yöneticisi Konsolu'nu seçin. Paket Yöneticisi Konsolu penceresinde aşağıdaki komutu girin:

Enable-Migrations

Bu komut, projenize Migrations adlı bir klasörün yanı sıra Migrations klasörüne Configuration.cs adlı bir kod dosyası ekler.

Yapılandırma noktası c s dosyasının mavi renkle vurgulandığı klasör hiyerarşisini gösteren Çözüm Gezgini'nin ekran görüntüsü.

Configuration.cs dosyasını açın. Aşağıdaki using deyimini ekleyin.

using BookService.Models;

Ardından Configuration.Seed yöntemine aşağıdaki kodu ekleyin:

protected override void Seed(BookService.Models.BookServiceContext context)
{
    context.Authors.AddOrUpdate(x => x.Id,
        new Author() { Id = 1, Name = "Jane Austen" },
        new Author() { Id = 2, Name = "Charles Dickens" },
        new Author() { Id = 3, Name = "Miguel de Cervantes" }
        );

    context.Books.AddOrUpdate(x => x.Id,
        new Book() { Id = 1, Title = "Pride and Prejudice", Year = 1813, AuthorId = 1, 
            Price = 9.99M, Genre = "Comedy of manners" },
        new Book() { Id = 2, Title = "Northanger Abbey", Year = 1817, AuthorId = 1, 
            Price = 12.95M, Genre = "Gothic parody" },
        new Book() { Id = 3, Title = "David Copperfield", Year = 1850, AuthorId = 2, 
            Price = 15, Genre = "Bildungsroman" },
        new Book() { Id = 4, Title = "Don Quixote", Year = 1617, AuthorId = 3, 
            Price = 8.95M, Genre = "Picaresque" }
        );
}

Paket Yöneticisi Konsolu penceresinde aşağıdaki komutları yazın:

Add-Migration Initial
Update-Database

İlk komut veritabanını oluşturan kodu oluşturur ve ikinci komut bu kodu yürütür. Veritabanı LocalDB kullanılarak yerel olarak oluşturulur.

Geçişleri Etkinleştir, Geçiş Başlangıç Ekle ve Veritabanını Güncelleştir satırlarının kırmızıyla daire içine alındığı Paket Yöneticisi Konsolu penceresinin ekran görüntüsü.

API'yi keşfetme (İsteğe bağlı)

Uygulamayı hata ayıklama modunda çalıştırmak için F5 tuşuna basın. Visual Studio, IIS Express'i başlatır ve web uygulamanızı çalıştırır. Ardından Visual Studio bir tarayıcı başlatır ve uygulamanın giriş sayfasını açar.

Visual Studio bir web projesi çalıştırdığında bir bağlantı noktası numarası atar. Aşağıdaki resimde bağlantı noktası numarası 50524'dür. Uygulamayı çalıştırdığınızda farklı bir bağlantı noktası numarası görürsünüz.

Hata ayıklama modunda Visual Studio'dan başlatılan A P I bağlantısının kırmızıyla daire içine alınıp kırmızı okla vurgulandığı uygulama penceresinin ekran görüntüsü.

Giriş sayfası ASP.NET MVC kullanılarak uygulanır. Sayfanın üst kısmında "API" yazan bir bağlantı vardır. Bu bağlantı sizi web API'sinin otomatik olarak oluşturulan yardım sayfasına getirir. (Bu yardım sayfasının nasıl oluşturulduğunu ve sayfaya kendi belgelerinizi nasıl ekleyebileceğinizi öğrenmek için bkz. ASP.NET Web API'sinde Yardım Sayfaları Oluşturma.) İstek ve yanıt biçimi de dahil olmak üzere API hakkındaki ayrıntıları görmek için yardım sayfası bağlantılarına tıklayabilirsiniz.

API özelliklerine yönelik belgelerin bağlantılarının listesini gösteren otomatik oluşturulan yardım sayfasının ekran görüntüsü.

API, veritabanında CRUD işlemlerini etkinleştirir. Aşağıdakiler API'yi özetler.

Yazarlar Açıklama
GET api'si/yazarları Tüm yazarları alın.
GET api/authors/{id} ID'sine göre bir yazar edinin.
POST /api/authors Yeni bir yazar oluşturun.
PUT /api/authors/{id} Var olan bir yazarı güncelleştirin.
DELETE /api/authors/{id} Bir yazarı silin.
Kitaplar Açıklama
GET /api/books Tüm kitapları al.
GET /api/books/{id} Kimliğine göre bir kitap al.
POST /api/books Yeni bir kitap oluşturun.
PUT /api/books/{id} Mevcut bir kitabı güncelleştirin.
DELETE /api/books/{id} Bir kitabı silin.

Veritabanını Görüntüleme (İsteğe Bağlı)

Update-Database komutunu çalıştırdığınızda EF veritabanını oluşturup yöntemini çağırdı Seed . Uygulamayı yerel olarak çalıştırdığınızda EF, LocalDB kullanır. Veritabanını Visual Studio'da görüntüleyebilirsiniz. Görünüm menüsünde SQL Server Nesne Gezgini'ni seçin.

Mavi renkle vurgulanmış S Q L Sunucusu öğesini ve sarı renkle vurgulanmış S Q L Sunucusu Ekle öğesini gösteren S Q L Sunucusu Nesne Gezgini'nin ekran görüntüsü.

Sunucuya Bağlan iletişim kutusundaki Sunucu Adı düzenleme kutusuna "(localdb)\v11.0" yazın. Kimlik Doğrulama seçeneğini "Windows Kimlik Doğrulaması" olarak bırakın. Bağlan'a tıklayın.

Sunucu adı alanında yerel d b v 11 nokta 0 metnini gösteren ve mavi renkle vurgulanan Sunucuya Bağlan iletişim kutusunun ekran görüntüsü.

Visual Studio LocalDB'ye bağlanır ve SQL Server Nesne Gezgini penceresinde mevcut veritabanlarınızı gösterir. EF'in oluşturduğu tabloları görmek için düğümleri genişletebilirsiniz.

Kitap Hizmeti Bağlamı öğesinin mavi renkle vurgulandığı klasör hiyerarşisini gösteren S Q L Server Nesne Gezgini'nin ekran görüntüsü.

Verileri görüntülemek için bir tabloya sağ tıklayın ve Verileri Görüntüle'yi seçin.

S Q L Server Nesne Gezgini'nin ekran görüntüsü, d b o noktasındaki Kitaplar öğesi mavi renkle, Verileri Görüntüle öğesi ise sarı renkle vurgulanmış şekilde gösterilmektedir.

Aşağıdaki ekran görüntüsünde Kitaplar tablosunun sonuçları gösterilmektedir. EF'nin veritabanını tohum verileriyle doldurduğunu ve tablonun Yazarlar tablosunun yabancı anahtarını içerdiğine dikkat edin.

Kitaplar tablosunun, tohum verileriyle doldurulmuş veritabanı ve yabancı anahtar içeren bölümünün ekran görüntüsü.