我使用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实体进行编码。 –