Entity Framework için EntityClient Sağlayıcısı
EntityClient sağlayıcısı, Entity Framework uygulamaları tarafından kavramsal modelde açıklanan verilere erişmek için kullanılan bir veri sağlayıcısıdır. Kavramsal modeller hakkında bilgi için bkz . Modelleme ve Eşleme. EntityClient, veri kaynağına erişmek için diğer .NET Framework veri sağlayıcılarını kullanır. Örneğin, EntityClient bir SQL Server veritabanına erişirken SQL Server (SqlClient) için .NET Framework Veri Sağlayıcısı kullanır. SqlClient sağlayıcısı hakkında bilgi için bkz . Entity Framework için SqlClient. EntityClient sağlayıcısı ad alanında System.Data.EntityClient uygulanır.
Bağlantıları Yönetme
Entity Framework, temel alınan bir veri sağlayıcısına ve ilişkisel veritabanına bir EntityConnection sağlayarak depolamaya özgü ADO.NET veri sağlayıcılarını temel alır. Nesne EntityConnection oluşturmak için, gerekli modelleri ve eşlemeyi içeren bir meta veri kümesine ve ayrıca depolamaya özgü bir veri sağlayıcısı adına ve bağlantı dizesi başvurmanız gerekir. EntityConnection oluşturulduktan sonra varlıklara kavramsal modelden oluşturulan sınıflar aracılığıyla erişilebilir.
app.config dosyasında bir bağlantı dizesi belirtebilirsiniz.
sınıfını System.Data.EntityClient EntityConnectionStringBuilder da içerir. Bu sınıf, geliştiricilerin sınıf özelliklerini ve yöntemlerini kullanarak programlı olarak doğru bağlantı dizesi oluşturmalarını ve mevcut bağlantı dizesi ayrıştırmalarını ve yeniden oluşturmalarını sağlar.
Sorgu Oluşturma
Entity SQL dili, doğrudan kavramsal varlık şemalarıyla çalışan ve devralma ve ilişkiler gibi Varlık Veri Modeli kavramlarını destekleyen, depolamadan bağımsız bir SQL diyalekttir. EntityCommand sınıfı, varlık modeline karşı bir Entity SQL komutu yürütmek için kullanılır. Nesneleri oluştururken EntityCommand saklı yordam adı veya sorgu metni belirtebilirsiniz. Entity Framework, genel Entity SQL'i depolamaya özgü sorgulara çevirmek için depolamaya özgü veri sağlayıcılarıyla birlikte çalışır. Entity SQL sorguları yazma hakkında daha fazla bilgi için bkz . Varlık SQL Dili.
Aşağıdaki örnek bir EntityCommand nesne oluşturur ve özelliğine EntityCommand.CommandText bir Entity SQL sorgu metni atar. Bu Varlık SQL sorgusu, kavramsal modelden liste fiyatına göre sipariş edilen ürünleri istemektedir. Aşağıdaki kodda depolama modeli hakkında hiçbir bilgi yoktur.
EntityCommand cmd = conn.CreateCommand();
cmd.CommandText = @"SELECT VALUE p
FROM AdventureWorksEntities.Product AS p
ORDER BY p.ListPrice";
Sorguları Yürütme
Sorgu yürütüldüğünde ayrıştırılır ve kurallı komut ağacına dönüştürülür. Sonraki tüm işlemler komut ağacında gerçekleştirilir. Komut ağacı, ile temel alınan .NET Framework veri sağlayıcısı arasındaki System.Data.EntityClient iletişimin aracıdır. Örneğin System.Data.SqlClient, .
, EntityDataReader kavramsal bir modele göre yürütmenin EntityCommand sonuçlarını ortaya çıkarır. öğesini döndüren komutu yürütmek için komutunu çağırınEntityDataReaderExecuteReader. zengin EntityDataReader yapılandırılmış sonuçları açıklamak için uygular IExtendedDataRecord .
İşlemleri Yönetme
Entity Framework'te işlemleri kullanmanın iki yolu vardır: otomatik ve açık. Otomatik işlemler ad alanını System.Transactions , açık işlemler ise sınıfını EntityTransaction kullanır.
Kavramsal bir model aracılığıyla kullanıma sunulan verileri güncelleştirmek için bkz . Nasıl yapılır: Entity Framework'te İşlemleri Yönetme.
Bu Bölümde
Nasıl yapılır: PrimitiveType Sonuçları Döndüren Bir Sorgu Yürütme
Nasıl yapılır: StructuralType Sonuçları Döndüren Bir Sorgu Yürütme
Nasıl yapılır: RefType Sonuçları Döndüren Bir Sorgu Yürütme
Nasıl yapılır: Karmaşık Türler Döndüren Bir Sorgu Yürütme
Nasıl yapılır: İç İçe Geçmiş Koleksiyonlar Döndüren Bir Sorgu Yürütme
Nasıl yapılır: EntityCommand Kullanarak Parametreli Varlık SQL Sorgusu Yürütme
Nasıl yapılır: EntityCommand Kullanarak Parametreli Saklı Yordam Yürütme
Nasıl yapılır: Çok Biçimli Sorgu Yürütme
Nasıl yapılır: Navigate İşleci ile İlişkilerde Gezinme