我在此站点上进行了搜索,但无法从我的上下文中获取实际的 DbSet。我正在尝试根据表名动态检索每个数据库集。
var dynamicdbset = GetDbSetByTableName(uploadTableName); //Dbset name is Mytables
private dynamic GetDbSetByTableName(string tableName)
{
MyEntities context = new MyEntities();
System.Reflection.PropertyInfo[] properties = typeof(ClearGUIEntities).GetProperties();
var prop = properties.FirstOrDefault(p => p.Name == tableName + "s");
using (var db = new MyEntities())
{
var dbset = prop?.GetValue(db);
return dbset;
}
}
这里的问题是它返回了一些通用数据库集,但我不能使用 linq 也不能做一个简单的操作,比如
dynamicdbset.Where(t = > t.Id == 123).Single();
我需要能够通过 tablename 动态获取 dbset,并且还需要以与创建数据相同的方式查询数据
var value = context.MyTables.FirstorDefault()
神不在的星期二
相关分类