Frage

In LINQ zu SQL kann ich ein Repository dynamisch verwenden DataContext.GetTable<T>. Gibt es eine ähnliche Möglichkeit, dies in Entity Framework 4 zu tun, außer die Eigenschaften auf dem spezifischen zu deklarieren DbContext? Zum Beispiel:

public MyDbContext: DbContext
{
    public DbSet<MySet> MySets {get; set;}
}

Ich würde gerne wissen, wie ich einen Verweis erstellen/beziehen kann MySets dynamisch wie möglich mit linq zu SQL wie in:

var mySet = MyDbContext.GetTable<MySet>();
War es hilfreich?

Lösung

DbContext hat Methode dafür:

  var set = context.Set<MyEntity>();

Andere Tipps

Verwenden:

DbSet<MyEntity> set = context.Set<MyEntity>();

Oder wenn Sie die generische Methode nicht verwenden können:

DbSet set = context.Set(
    typeof( MyEntity )
);

Mach dir keine Sorgen, dass ein POCO zweitladend und dupliziert. Sets werden im Kontext intern zwischenstrahlt.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top