Czy istnieje sposób na pobranie typów POCO z określonej instancji DbContext?Kod EF Najpierw należy pobrać wszystkie typy POCO dla DbContext
Odpowiedz
Trzeba otworzyć MetadataWorkspace
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, ale potrzebuję dostępu do klasy POCO Atrybuty typu, właściwości i właściwości - Instancje EntityType zwracają własną implementację we właściwościach, właściwościach metadanych itd. – DrAlligieri
@DrAlligieri Możesz uzyskać pełną nazwę typu i następnie użyj refleksów, aby uzyskać dostęp do właściwości i atrybutów. – Eranga
FullName zwraca "CodeFirstDatabaseSchema.TypeNameThere", CodeFirstDatabaseSchema - jest niepoprawną przestrzenią nazw dla klasy POCO – DrAlligieri
@Lei Yang: można to wykorzystać, aby uzyskać wszystkie typy do listy.
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));
}
Niestety, nie mogę edytować zaakceptowane odpowiedź - wystarczy zmienić dataspace używany następująco
var items = mdw.GetItems<EntityType>(DataSpace.OSpace);
aby uzyskać klas POCO zamiast serwerów proxy EF.
- 1. Kod EF Najpierw wymuszony ładowanie
- 2. Kod EF 4.1 Najpierw ModelBuilder HasForeignKey dla pojedynczych relacji
- 3. Kod EF Najpierw wiele jednostek do tej samej tabeli
- 4. Kod EF Najpierw MigrateDatabaseToLatestVersion akceptuje ciąg znaków Nazwa z konfiguracji
- 5. Jak wymusić kod EF Najpierw zapytać bazę danych?
- 6. Rusztowanie EF Core DbContext
- 7. Najpierw należy wpisać kod Entity Framework. Znajdź klucz podstawowy
- 8. Kod EF Najpierw CTP 5 i SQL SErver 2008 R2
- 9. Kod EF Najpierw utwórz nieklastrowy indeks klucza podstawowego
- 10. Kod EF-pierwszy PluralizowanieNazwyzekanieTrybu dla ONE DbSet
- 11. Kod EF Pierwsza migracja z wieloma bazami danych/DbContext
- 12. Kod EF Najpierw. Kolekcja dla dzieci ma wartość zerową dla rodzica
- 13. Najpierw kod EF - niestandardowa nazwa ograniczenia klucza obcego
- 14. Jak najpierw wymusić kod EF, aby odtworzyć bazy danych?
- 15. SQLite z kodem EF Najpierw
- 16. Kod EF Najpierw - tworzenie bazy danych - Logowanie nie powiodło się dla użytkownika
- 17. Kod EF EF 4.1 Pierwszy widok dołączonego obiektu jako zmodyfikowanego
- 18. Najpierw kod Entity Framework: ignorowanie klas
- 19. Dlaczego używać kontekstu DbContext, a nie ObjectContext
- 20. Dlaczego EF DataBase Najpierw nie używamy getdate()?
- 21. Najpierw kod jednostki Entity - Konfiguracja w innym pliku
- 22. Entity Framework 6 Kod Najpierw Niestandardowe funkcje
- 23. Klasa POCO w EF nie działa zgodnie z oczekiwaniami
- 24. Zrozumienie kod najpierw właściwości wirtualne
- 25. Kod struktury Entity Najpierw IQueryable
- 26. Jak najpierw pobrać plik atrybutów bieżącego receptury?
- 27. Nadal problemy z profilowaniem bazy danych EF Najpierw
- 28. Tworzenie kodu EF Pierwszego kontekstu DbContext za pomocą Roslyn
- 29. Czy EF wtrąć należy zrobić ręcznie?
- 30. HttpClient pobrać wszystkie nagłówki
o tym samym problemie, rozwiązałeś? Potrzebuję pomocy .. =/ –