Ich versuche, einige dynamische Code mit Entity Framework zu tun. Ich habe ein Modell (Model1) mit einer Tabelle (Test1), es ist einfach. Ich versuche, das Modell Test1 programmatisch mit dem Namen der Tabelle aufzurufen, um es nach verschiedenen Aufgaben zu verwenden. Ich wurde in Google suchen und ich habe Finding entities by key in entity framework gefunden, aber es ist nicht funktioniert, oder ich habe keine Ahnung, ...Get Entitäten, die von Zeichenfolge in Entity Framework
Wenn ich diesen Code lief es auf den Versuch bricht zu setzen entityProperty
Model1Container m = new Model1Container();
PropertyInfo entityProperty = m.GetType().GetProperties().Where(t => t.Name == "Test1").Single();
var baseQuery = (IQueryable<IIdentity>)entityProperty.GetValue(m, null);
Entschuldigung für die Erklärung.
Irgendwelche Ideen?
Ich glaube, ich erklärte falsch .. Was ich will, ist programmatisch die Instanz von einer Einheit zu erhalten, dass ich in dem Modell. Auf diese Weise kann ich eine Zeichenfolge verwenden, um eine Entity zu erhalten, ohne m.Test1 .... zu schreiben, anstatt etwas Ähnliches wie m ["Test1"] (nicht so, aber ähnlich). Thx – kartGIS
Sie können Teilklassen Ihrer Einheiten anlegen und sogar [erforderlich] oder andere Attribute auf den Feldern durch Metadaten: http://stackoverflow.com/questions/14059455/adding-validation-attributes-with-an-entity-framework- Datenmodell Sobald Sie das getan haben, können Sie jede Entität von IEntity ableiten und IEntity definieren. Sie können dann Assembly assembly = Assembly.Load ("Testy20161006") ausführen; Geben Sie t = assembly.GetType ("Testy20161006.Controllers." + "Test") ein; IEntity entity = (Objekt) Activator.CreateInstance (t); Kredit John Skeet – kblau
Thx @ kblau! Ich habe es so gemacht – kartGIS