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 Studio Web Developer Express SP1 önkoşulları
- ASP.NET MVC 3 Araçları Güncelleştirmesi
- SQL Server Compact 4.0(çalışma zamanı + araçlar desteği)
Visual Web Developer 2010 yerine Visual Studio 2010 kullanıyorsanız, şu bağlantıya tıklayarak önkoşulları yükleyin: Visual Studio 2010 önkoşulları.
C# kaynak kodu içeren 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" parçası olacaktır.
Bu model sınıflarını tanımlamak ve bunlarla çalışmak için Entity Framework olarak bilinen .NET Framework veri erişim teknolojisini 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şturabilirsiniz ve bu da çok temiz ve hızlı bir geliştirme iş akışı sağlar.
Model Sınıfları Ekleme
Çözüm Gezgini'daModeller klasörüne sağ tıklayın, Ekle'yi ve ardından Sınıf'ı seçin.
Sınıfı "Movie" olarak adlandırın.
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ütunla 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 DbSet
hakkı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;
Movie.cs dosyasının tamamı 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, hangi veritabanına bağlanacağının nasıl belirtileceğidir. Bunu, uygulamanın Web.config dosyasına bağlantı bilgilerini ekleyerek yapacaksınız.
Uygulama kök Web.config dosyasını açın. (Görünümler klasöründeki Web.config dosyası değil.) Aşağıdaki resimde her ikiWeb.config dosyası da gösterilir; Web.config dosyasını kırmızıyla daire içine alınmış olarak açın.
aşağıdaki bağlantı dizesini <connectionStrings>
Web.config dosyasındaki öğesine ekleyin.
<add name="MovieDBContext"
connectionString="Data Source=|DataDirectory|Movies.sdf"
providerName="System.Data.SqlServerCe.4.0"/>
Aşağıdaki örnekte , yeni bağlantı dizesinin eklendiğiWeb.configdosyasının 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 miktarda kod ve XML, film verilerini bir veritabanında göstermek 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.
Geri Bildirim
https://aka.ms/ContentUserFeedback.
Çok yakında: 2024 boyunca, içerik için geri bildirim mekanizması olarak GitHub Sorunları’nı kullanımdan kaldıracak ve yeni bir geri bildirim sistemiyle değiştireceğiz. Daha fazla bilgi için bkz.Gönderin ve geri bildirimi görüntüleyin