1
我以前使用的DataContext有一個GetTable(類型)方法來一般地獲取表。例如:
GetTable相當於ObjectContext
context.GetTable(myObject.GetType());
最近我的團隊決定切換到使用ObjectContext的實體框架。有沒有辦法通過類似於DataContexts GetTable方法的實體名稱獲取表而不必指定特定類型?它必須是通用的。
我以前使用的DataContext有一個GetTable(類型)方法來一般地獲取表。例如:
GetTable相當於ObjectContext
context.GetTable(myObject.GetType());
最近我的團隊決定切換到使用ObjectContext的實體框架。有沒有辦法通過類似於DataContexts GetTable方法的實體名稱獲取表而不必指定特定類型?它必須是通用的。
有的確是一個很簡單的方法來做到這一點,像這樣:
public IQueryable GetTable<T>(T entity) where T : class
{
return context.CreateObjectSet<T>();
}
現在,如果我創建一個Person
對象,並傳遞給它的通用方法,下面的「allPeople」變量將是一個IQueryable
來自我的數據庫的人,你可以迭代。
Person person = new Person();
IQueryable allPeople = GetTable(person);
很酷謝謝! – MBU