在 LINQ to Entities 查询中无法构造实体或复杂类型
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在 LINQ to Entities 查询中无法构造实体或复杂类型相关的知识,希望对你有一定的参考价值。
在编写EF+Linq的过程中,可能会遇到“在 LINQ to Entities 查询中无法构造实体或复杂类型”的问题。解决方法:从原有类型中继承一个子类,然后创建子类实例
下面是例子:
private static void Main(string[] args)
{
Boolean s = false;
using(Northwind dbo = new Northwind())
{
IQueryable<Customers> query;
if(s)
{
// 错误的写法,会出现 “在 LINQ to Entities 查询中无法构造实体或复杂类型”错误
query = from a in dbo.Customers
select new Customers()
{
ID=a.ID,
Address = a.Address
};
}
else
{
// 解决方法,从原有类型中继承一个子类
query = from a in dbo.Customers
select new CustomerChild()
{
ID=a.ID,
Address = a.Address
};
}
var c = query.ToList();
Console.WriteLine(c.Count);
Console.Read();
}
}
private class CustomerChild : Customers { }
以上是关于在 LINQ to Entities 查询中无法构造实体或复杂类型的主要内容,如果未能解决你的问题,请参考以下文章
在 LINQ to Entities 查询中无法构造实体或复杂类型“Cits.Data.LineImg”。
LINQ To Entities 无法识别方法 Last。真的吗?
LINQ To Entities 无法识别方法 Last。真的吗?