Aracılığıyla paylaş


Model Ekleme (C#)

tarafından Rick Anderson

Bu öğreticide, Microsoft Visual Studio'nun ücretsiz sürümü olan Microsoft Visual Web Developer 2010 Express Service Pack 1'i kullanarak ASP.NET MVC Web uygulaması oluşturmanın temelleri öğretilecektir. Başlamadan önce, aşağıda listelenen önkoşulları yüklediğinizden emin olun. Aşağıdaki bağlantıya tıklayarak bunların tümünü yükleyebilirsiniz: Web Platformu Yükleyicisi. Alternatif olarak, aşağıdaki bağlantıları kullanarak önkoşulları tek tek yükleyebilirsiniz:

Visual Web Developer 2010 yerine Visual Studio 2010 kullanıyorsanız, aşağıdaki bağlantıya tıklayarak önkoşulları yükleyin: Visual Studio 2010 önkoşulları.

C# kaynak koduna sahip bir Visual Web Developer projesi bu konuya eşlik edebilir. C# sürümünü indirin. Visual Basic'i tercih ediyorsanız, bu öğreticinin Visual Basic sürümüne geçin.

Model Ekleme

Bu bölümde, veritabanındaki filmleri yönetmek için bazı sınıflar ekleyeceksiniz. Bu sınıflar, ASP.NET MVC uygulamasının "model" bölümü olacaktır.

Bu model sınıflarını tanımlamak ve bunlarla çalışmak için Entity Framework olarak bilinen bir .NET Framework veri erişim teknolojisi kullanacaksınız. Entity Framework (genellikle EF olarak adlandırılır) Code First adlı bir geliştirme paradigması destekler. Code First, basit sınıflar yazarak model nesneleri oluşturmanıza olanak tanır. (Bunlar "düz eski CLR nesnelerinden" POCO sınıfları olarak da bilinir.) Daha sonra veritabanını sınıflarınızdan anında oluşturarak çok temiz ve hızlı bir geliştirme iş akışı sağlayabilirsiniz.

Model Sınıfları Ekleme

Çözüm Gezgini Modeller klasörüne sağ tıklayın, Ekle'yi ve ardından Sınıf'ı seçin.

Çözüm Gezgini penceresini gösteren ekran görüntüsü. Ekle seçeneği Modeller sağ tıklama menüsünde seçilidir. Sınıf, alt menüde seçilidir.

Sınıfı "Movie" olarak adlandırın.

CreateMovieClass

Sınıfına aşağıdaki beş özelliği Movie ekleyin:

public class Movie 
{
    public int ID { get; set; }
    public string Title { get; set; }
    public DateTime ReleaseDate { get; set; }
    public string Genre { get; set; }
    public decimal Price { get; set; }
}

Veritabanındaki filmleri temsil etmek için sınıfını Movie kullanacağız. Bir Movie nesnenin her örneği veritabanı tablosundaki bir satıra karşılık gelir ve sınıfın Movie her özelliği tablodaki bir sütuna eşlenir.

Aynı dosyaya aşağıdaki MovieDBContext sınıfı ekleyin:

public class MovieDBContext : DbContext 
{
    public DbSet<Movie> Movies { get; set; } 
}

sınıfı MovieDBContext , veritabanındaki sınıf örneklerini getirme, depolama ve güncelleştirme Movie işlemlerini gerçekleştiren Entity Framework film veritabanı bağlamını temsil eder. , MovieDBContext Entity Framework tarafından sağlanan temel sınıftan türetilir DbContext . ve DbSethakkında DbContext daha fazla bilgi için bkz. Entity Framework için Üretkenlik Geliştirmeleri.

ve DbSetöğesine başvurabilmek DbContext için dosyanın en üstüne aşağıdaki using deyimi eklemeniz gerekir:

using System.Data.Entity;

Tam Movie.cs dosyası aşağıda gösterilmiştir.

using System;
using System.Data.Entity;

namespace MvcMovie.Models  
{
    public class Movie
    {        
        public int ID { get; set; }
        public string Title { get; set; }        
        public DateTime ReleaseDate { get; set; }        
        public string Genre { get; set; }
        public decimal Price { get; set; }    
    }

    public class MovieDBContext : DbContext 
    {
        public DbSet<Movie> Movies { get; set; } 
    }
}

Bağlantı Dizesi Oluşturma ve SQL Server Compact ile Çalışma

MovieDBContext Oluşturduğunuz sınıf, veritabanına bağlanma ve nesneleri veritabanı kayıtlarına eşleme Movie görevini işler. Ancak sorabileceğiniz sorulardan biri, bağlanacağı veritabanının nasıl belirtileceğidir. Bunu, uygulamanın Web.config dosyasına bağlantı bilgileri ekleyerek yapacaksınız.

Uygulama kök Web.config dosyasını açın. (Değil Görünümler klasöründeki Web.config dosyası.) Aşağıdaki resimde her iki Web.config dosyası da gösterilmektedir; Web.config dosyasını kırmızı daire içinde açabilirsiniz.

Çözüm Gezgini penceresini gösteren ekran görüntüsü. Web noktası yapılandırması kırmızıyla daire içine alınır.

Web.config dosyasındaki <connectionStrings> öğesine aşağıdaki bağlantı dizesi ekleyin.

<add name="MovieDBContext" 
         connectionString="Data Source=|DataDirectory|Movies.sdf" 
         providerName="System.Data.SqlServerCe.4.0"/>

Aşağıdaki örnekte Web.config dosyasının yeni bağlantı dizesi eklenmiş bir bölümü gösterilmektedir:

<configuration>
  <connectionStrings>
    <add name="MovieDBContext" 
         connectionString="Data Source=|DataDirectory|Movies.sdf" 
         providerName="System.Data.SqlServerCe.4.0"/>
    <add name="ApplicationServices"
         connectionString="data source=.\SQLEXPRESS;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|aspnetdb.mdf;User Instance=true"
         providerName="System.Data.SqlClient" />
  </connectionStrings>

Bu küçük kod ve XML miktarı, film verilerini bir veritabanında temsil etmek ve depolamak için yazmanız gereken her şeydir.

Ardından, film verilerini görüntülemek ve kullanıcıların yeni MoviesController film listeleri oluşturmasına izin vermek için kullanabileceğiniz yeni bir sınıf oluşturacaksınız.