ADO.NET用户第一次尝试使用EF。我正在尝试从表名的字符串中获取表格。 比我想象的更难。 基本上我在这里:
var tableName = "Name.Entities.Measure" + measureType;
var table = Activator.CreateInstance("Name.Entities", tableName);
var unwrapped = table.Unwrap();
var type = unwrapped.GetType();
var dbset = context.Set<type>();
OR
switch (tableString)
{
case "table1":
return GetDataFromTable1();
case "table2":
return GetDataFromTable2();
}
少代码会很好;)
考虑使用可搜索的所有实体集合来制作扩展方法。 更好的解决方案?
答案 0 :(得分:3)
我一直在找同样的事情。尝试使用非泛型版本的Set():
var tableName = "Name.Entities.Measure" + measureType;
var type = Type.GetType(tableName);
var dbset = Context.Set(type);