Belirtilen DbContext örneğinden POCO türlerini almanın bir yolu var mı?EF CodeFirst: DbContext için tüm POCO türlerini alın
cevap
public class MyContext : DbContext
{
public void Test()
{
var objectContext = ((IObjectContextAdapter)this).ObjectContext;
var mdw = objectContext.MetadataWorkspace;
var items = mdw.GetItems<EntityType>(DataSpace.CSpace);
foreach (var i in items)
{
Console.WriteLine("Class Name: {0}", i.Name);
}
}
tnx, ancak POCO sınıfına, tip ve özellik özelliklerine erişmem gerekiyor - EntityType örnekleri, Properties, PropertiesMetadata ve etc içinde kendi uygulamanızı döndürür. – DrAlligieri
@DrAlligieri Yazının tam adını alabilir ve daha sonra özellik ve niteliklere erişmek için yansımaları kullanın. – Eranga
FullName "CodeFirstDatabaseSchema.TypeNameThere" değerini döndürür, CodeFirstDatabaseSchema - POCO sınıfı – DrAlligieri
@Lei Yang erişmek gerekir: Eğer bir liste halinde her türlü almak için bunu kullanabilir.
var objectContext = ((IObjectContextAdapter) dbContext).ObjectContext;
var mdw = objectContext.MetadataWorkspace;
var items = mdw.GetItems<EntityType>(DataSpace.CSpace);
var dbContextAssembly = dbContext.GetType().Assembly;
var entityTypes = new List<Type>();
foreach (var i in items) {
entityTypes.Add(dbContextAssembly.GetType(i.FullName));
}
Ne yazık ki, kabul cevapları düzenleyemiyordu - Az önce POCO sınıfları yerine EF vekiller almak için
var items = mdw.GetItems<EntityType>(DataSpace.OSpace);
aşağıdaki gibi kullanılan DATASPACE değiştirmeniz gerekir.
- 1. EF Codefirst ve RDLC Raporları
- 2. EF Çekirdek İskele DbContext
- 3. Güncelleme EF 4 Özellik CTP 4 Müstakil POCO
- 4. EF 4.2, CodeFirst - Karmaşık türdeki gezinme özelliği
- 5. EF CodeFirst Tabamımı nasıl yeniden oluştururum?
- 6. Tüm açık belirli jenerik türlerini uygulayan tüm türleri alın
- 7. EF Core RC2 FinaI Sorun: Bu DbContext
- 8. EF Kodu İlk 4.3 DbContext Yaşam Döngüsü?
- 9. EF 4.1 - DBContext SqlQuery ve İçer
- 10. Değişim İzleme Tutarsızlık DBContext ve EF Kod İlk
- 11. bire-bir akıcı ayarını eklemek olamaz - ef codeFirst
- 12. : Nasıl mevcut tüm veri türlerini listelemek için?
- 13. DbContext
- 14. POCO
- 15. EF Kodu Birden Çok Veri Tabanlı İlk Geçiş/DbContext
- 16. Tüm düğme etiketi türlerini edinin
- 17. DbContext,
- 18. Bağlantı özelliğine erişim DbContext
- 19. varlık çerçevesi 4.1 ObjectContext DBContext
- 20. POCO: C++
- 21. AFNetworking tüm içerik türlerini kabul eder
- 22. Erişim IQueryable üzerinden DbContext
- 23. ASP.Net Kimliği Birleştirme DbContext benim DbContext
- 24. EF code-first BİR DbSet için çoğullaştırmaTableNameConvention
- 25. Tüm dosya türlerini görüntülemek için hız çubuğunu nasıl etkinleştiririm?
- 26. tohum yöntemi EntityFramework ile çağrılmadı CodeFirst
- 27. EF
- 28. Bir işlem için tüm DLL'leri alın
- 29. Twilio hesabınız için tüm numaraları alın
- 30. IDbConnection EF içeriğine nasıl geçilir?
aynı sorunu yaşıyor, çözdünüz mü? Yardıma ihtiyacım var .. =/ –