Model First
Bu video ve adım adım yönergeler, Entity Framework kullanarak Model First geliştirmeye yönelik bir giriş sağlar. Model First, Entity Framework Designer kullanarak yeni bir model oluşturmanızı ve sonra modelden bir veritabanı şeması oluşturmanızı sağlar. Model bir EDMX dosyasında (. edmx uzantılı) depolanır ve Entity Framework Designer görüntülenebilir ve düzenlenebilir. Uygulamanızda etkileşimde bulunan sınıflar, EDMX dosyasından otomatik olarak oluşturulur.
Videoyu izleme
Bu video ve adım adım yönergeler, Entity Framework kullanarak Model First geliştirmeye yönelik bir giriş sağlar. Model First, Entity Framework Designer kullanarak yeni bir model oluşturmanızı ve sonra modelden bir veritabanı şeması oluşturmanızı sağlar. Model bir EDMX dosyasında (. edmx uzantılı) depolanır ve Entity Framework Designer görüntülenebilir ve düzenlenebilir. Uygulamanızda etkileşimde bulunan sınıflar, EDMX dosyasından otomatik olarak oluşturulur.
Sunulma ölçütü: Rowa Miller
Önkoşullar
bu izlenecek yolu tamamlamak için Visual Studio 2010 veya Visual Studio 2012 yüklü olması gerekir.
Visual Studio 2010 kullanıyorsanız, NuGet da yüklemiş olmanız gerekir.
1. uygulamayı oluşturun
Şeyleri basit tutmak için, veri erişimi gerçekleştirmek üzere Model First kullanan temel bir konsol uygulaması oluşturacağız:
- Visual Studio’yu açın
- Dosya- Yeni- > Project...
- sol menü ve konsol uygulamasındanWindows seçin
- Ad olarak Modelfirstsample girin
- Tamam'ı seçin
2. model oluştur
modelimizi oluşturmak için Visual Studio bir parçası olarak dahil edilen Entity Framework Designer kullanacağız.
Project- Yeni öğe Ekle...
sol menüden verileri seçin ve ardından ADO.NET Varlık Veri Modeli
Ad olarak BloggingModel girin ve Tamam' a tıkladıktan sonra varlık veri modeli Sihirbazı başlatılır
Boş model ' i seçin ve son ' a tıklayın

Entity Framework Designer boş bir modelle açılır. Artık modele varlıklar, Özellikler ve ilişkilendirmeler eklemeye başlayabiliriz.
Tasarım yüzeyine sağ tıklayıp Özellikler ' i seçin
Özellikler penceresi varlık kapsayıcısı adınıBloggingContextolarak değiştirin, bu, sizin için oluşturulacak türetilmiş bağlamın adıdır; bağlam, veritabanı ile bir oturumu temsil eder ve verileri sorgulayıp kaydetmenize olanak tanır
Tasarım yüzeyine sağ tıklayıp Yeni varlık Ekle... seçeneğini belirleyin.
Varlık adı ve blogID olarak anahtar adı olarak blog girin ve Tamam ' a tıklayın.

Tasarım yüzeyinde yeni varlığa sağ tıklayın ve Yeni skaler Özellik Ekle' yi seçin, özelliğin adı olarak ad girin.
URL özelliği eklemek için bu işlemi tekrarlayın.
Tasarım yüzeyinde URL özelliğine sağ tıklayın ve Özellikler' i seçin Özellikler penceresi null yapılabilir ayarını doğruolarak değiştirmek için birURL atamadan veritabanına bir blog kaydetmemizi sağlar
Yeni öğrenmeniz gereken teknikleri kullanarak postid anahtar özelliğine sahip bir Post varlığı ekleyin
Post varlığına başlık ve içerik skaler özellikleri ekleyin
Artık birkaç varlık olduğuna göre, aralarında bir ilişki (veya ilişki) ekleme zamanı.
Tasarım yüzeyine sağ tıklayıp Yeni İlişki Ekle... seçeneğini belirleyin.
İlişki noktasının bir bitişini bir tane çokluğa ve diğer uç noktaya kadar birçokçeşitle, bir blogun birçok gönderiye sahip olduğu ve bir Web bloguna ait olduğu anlamına gelir .
' Post ' varlığına yabancı anahtar özellikleri ekle kutusunun işaretli olduğundan emin olun ve Tamam ' a tıklayın.

Artık, bir veritabanı oluşturabileceğiniz ve veri okumak ve yazmak için kullanabileceğiniz basit bir modelimiz vardır.

Visual Studio 2010 ' de ek adımlar
Visual Studio 2010 ' de çalışıyorsanız, en son Entity Framework sürümüne yükseltmek için izlemeniz gereken bazı ek adımlar vardır. ' Nin, kullanımı çok daha kolay olan gelişmiş bir API yüzeyine erişim sağladığından ve en son hata düzeltmelerinin yanı sıra yükseltme önemlidir.
İlk olarak, NuGet Entity Framework en son sürümünü edinmemiz gerekiyor.
- Project: NuGet paketlerini yönet...Manage NuGet Packages... seçeneğine sahip değilseniz NuGet en son sürümünü yüklemelisiniz
- Çevrimiçi sekmesini seçin
- EntityFramework paketini seçin
- Install 'a tıklayın
Bundan sonra, Entity Framework sonraki sürümlerinde tanıtılan DbContext API 'sini kullanan kodu oluşturmak için modelimizi değiştirmemiz gerekiyor.
EF Designer 'daki modelinizin boş bir noktasına sağ tıklayıp kod oluşturma öğesi Ekle... seçeneğini belirleyin.
Sol menüden çevrimiçi şablonlar ' ı seçin ve DbContext ' i arayın
C# için EF 5. x DbContext oluşturucusunuseçin, ad olarak BloggingModel girin ve Ekle ' ye tıklayın.

3. veritabanı oluşturuluyor
Modelimiz verildiğinde, Entity Framework modeli kullanarak veri depolamanıza ve almasına imkan tanıyan bir veritabanı şemasını hesaplayabilirler.
Visual Studio ile yüklenen veritabanı sunucusu, yüklemiş olduğunuz Visual Studio sürümüne bağlı olarak farklılık gösteren bir sürümdür:
- Visual Studio 2010 kullanıyorsanız SQL bir Express veritabanı oluşturursunuz.
- Visual Studio 2012 kullanıyorsanız, localdb veritabanı oluşturursunuz.
Şimdi veritabanını oluşturalım.
Tasarım yüzeyine sağ tıklayın ve modelden veritabanı oluştur.. . seçeneğini belirleyin.
yeni bağlantı... ' e tıklayın ve hangi Visual Studio kullandığınız sürüme bağlı olarak localdb veya SQL Express belirtin, veritabanı adı olarak modelfirst. blog yazın.


Tamam ' ı seçtiğinizde, yeni bir veritabanı oluşturmak isteyip istemediğiniz sorulur, Evet ' i seçin.
İleri ' yi seçin ve Entity Framework Designer veritabanı şemasını oluşturmak için bir komut dosyası hesaplar
Betik görüntülenirken son ' a tıklayın ve betik projenize eklenir ve açılır
komut dosyasına sağ tıklayın ve yürüt' ü seçin, hangi Visual Studio hangi sürüme kullandığınıza bağlı olarak localdb veya SQL Server Express belirtmeniz için bağlanılacak veritabanını belirtmeniz istenir
4. & yazma verisi okunuyor
Artık bir modelimiz olduğuna göre, bazı verilere erişmek için bunu kullanmanın zamanı. Verilere erişmek için kullanacağınız sınıflar, EDMX dosyasına bağlı olarak sizin için otomatik olarak oluşturulur.
bu ekran görüntüsü Visual Studio 2012 ' den Visual Studio 2010 ' i kullanıyorsanız, BloggingModel.tt ve BloggingModel.Context.tt dosyaları, EDMX dosyasının altında iç içe değil doğrudan projenizin altında olacaktır.

Ana yöntemi aşağıda gösterildiği gibi program. cs ' de uygulayın. Bu kod, bağlamımız yeni bir örnek oluşturur ve yeni bir blog eklemek için onu kullanır. Daha sonra, bir LINQ sorgusu kullanarak, veritabanındaki tüm blogları başlık sırasına göre sıralanmış olarak alır.
class Program
{
static void Main(string[] args)
{
using (var db = new BloggingContext())
{
// Create and save a new Blog
Console.Write("Enter a name for a new Blog: ");
var name = Console.ReadLine();
var blog = new Blog { Name = name };
db.Blogs.Add(blog);
db.SaveChanges();
// Display all Blogs from the database
var query = from b in db.Blogs
orderby b.Name
select b;
Console.WriteLine("All blogs in the database:");
foreach (var item in query)
{
Console.WriteLine(item.Name);
}
Console.WriteLine("Press any key to exit...");
Console.ReadKey();
}
}
}
Şimdi uygulamayı çalıştırabilir ve test edebilirsiniz.
Enter a name for a new Blog: ADO.NET Blog
All blogs in the database:
ADO.NET Blog
Press any key to exit...
5. model değişiklikleriyle ilgilenme
Artık modelinizde bazı değişiklikler yapma zamanı, bu değişiklikleri yaptığımız için de veritabanı şemasını güncelleştirmemiz gerekiyor.
Modelinize yeni bir kullanıcı varlığı ekleyerek başlayacağız.
Anahtarın Özellik türü olarak anahtar adı ve dize olarak Kullanıcı adı ile yeni bir Kullanıcı varlık adı ekleyin

Tasarım yüzeyinde Kullanıcı adı özelliğine sağ tıklayın ve Özellikler' i seçin Özellikler penceresi MaxLength ayarını 50olarak değiştirin.Bu, Kullanıcı adı 'nda depolanabilecek verileri 50 karaktere kısıtlar
Kullanıcı varlığına DisplayName skalar özelliği ekleyin
Şimdi güncelleştirilmiş bir modelimiz var ve veritabanını yeni Kullanıcı varlık türü ile uyumlu olacak şekilde güncelleştirmeye hazırsınız.
- Tasarım yüzeyine sağ tıklayın ve modelden veritabanı oluştur...' u seçin, Entity Framework güncelleştirilmiş modele göre bir şemayı yeniden oluşturmak için bir komut dosyası hesaplar.
- Son ' a tıklayın
- Var olan DDL betiğinin üzerine yazma ve modelin eşleme ve depolama bölümlerinin yazılmasına ilişkin uyarılar alabilirsiniz, her iki uyarı için de Evet ' e tıklayabilirsiniz
- veritabanını oluşturmak için güncelleştirilmiş SQL betiği sizin için açıldı
Oluşturulan komut dosyası tüm mevcut tabloları bırakacak ve sonra şemayı sıfırdan yeniden oluşturacak. Bu, yerel geliştirme için çalışabilir, ancak daha önce dağıtılmış bir veritabanına yapılan değişiklikleri göndermek için uygun değildir. Daha önce dağıtılmış olan bir veritabanında değişiklikleri yayımlamanız gerekirse, betiği düzenlemeniz veya geçiş betiği hesaplamak için bir şema karşılaştırma aracı kullansanız gerekir. - Betiği sağ tıklatın ve Yürüt'Visual Studio seçin. Kullanmakta olduğunuza bağlı olarak bağlanacak veritabanını belirtmeniz, LocalDB veya SQL Server Express belirtmeniz Visual Studio istenir
Özet
Bu kılavuzda, EF Designer Model First model oluşturmamızı ve ardından bu modelden bir veritabanı oluşturmamızı sağlarken bu geliştirme adımlarını inceledik. Ardından modeli veritabanından veri okumak ve yazmak için kullandık. Son olarak modeli güncelleştirildi ve ardından veritabanı şemasını modelle eşlenecek şekilde yeniden oluşturabildi.