我想用像db.users.select(x=> x.FirstName)
这样的表名来调用方法,但是我在某个地方犯了一个错误,我这样写了但这会返回关于一行表的详细信息,而不是返回我想要的表数据,请帮助< / p>
public void LoadToGrid(string dbTableName)
{
dataGridView1.DataSource = db.GetType().GetMember(dbTableName).ToList();
}
答案 0 :(得分:2)
你的问题不是很明确,但如果你的意思是你想以通用的方式做到这一点,那么是的,这是可能的。您可以利用Set<T>
方法。例如:
public void LoadToGrid<T>(GridType grid) where T: class, new() {
grid.DataSource = dbContext.Set<T>().ToList();
}
要自定义网格中的数据字段,您可以添加此重载
public void LoadToGrid<T>(GridType grid, Expression<Func<T,Object>> selectExpression) where T: class, new() {
grid.DataSource = dbContext.Set<T>().Select(selectExpression).ToList();
}