我使用Linq從數據庫和實體框架中選擇項目來創建我的實體。實體框架還使用導入功能嚮導創建了複雜類型。每次我使用任何複雜類型返回查詢時,我會嘗試將結果強制轉換爲複雜返回類型時會得到空值。Linq Casting返回類型作爲複雜類型
private AWorksLTEntities db = new AWorksLTEntities();
public IQueryable<SelectAll_Result> SelectAllMethod()
{
var result = from p in db.Products
select p;
return result as IQueryable<SelectAll_Result>;
}
SelectAll_Result是EntityFrameworks創建的複雜類型和演員不工作,我的方法返回null。
使用正常的實體相同的代碼不會返回值
private AWorksLTEntities db = new AWorksLTEntities();
public Product SelectAllMethod()
{
var result = from p in db.Products
select p;
return result;
}
我的問題是,雖然這個例子很簡單,我創建這個使用代碼生成我的工作,並返回類型查詢很難確定,所以我需要能夠使用實體框架函數導入生成的複雜返回類型,而不是標準實體返回。
任何想法?提前致謝。
是否由EF生成'SelectAllMethod'? –
不,它是由我正在處理的T4模板生成的。我解析一堆存儲過程並從中創建方法。因爲它們是隨時生成的,所以我需要使用複雜的returntypes,而不僅僅是對EF實體進行編碼。 –