C# 无法创建“Closure type”类型的常量值
这是我的linq到实体查询,我得到了这个错误 无法创建“Closure type”类型的常量值。在此上下文中仅支持基本类型“如Int32、String和Guid”。 有人知道如何修复它或解决方法吗 另外,我使用的是Linq到实体,而不是Linq到SQLC# 无法创建“Closure type”类型的常量值,c#,linq-to-entities,C#,Linq To Entities,这是我的linq到实体查询,我得到了这个错误 无法创建“Closure type”类型的常量值。在此上下文中仅支持基本类型“如Int32、String和Guid”。 有人知道如何修复它或解决方法吗 另外,我使用的是Linq到实体,而不是Linq到SQL List<int> listint List<int> listintTwo return (from oa in _entity.TableOne join cc in _entity.Tab
List<int> listint
List<int> listintTwo
return (from oa in _entity.TableOne
join cc in _entity.TableTwo on oa.TableSix.ColumnOne equals cc.TableSix.ColumnOne
join os in _entity.TableThree on oa.TableThree.ColumnTwo equals os.ColumnTwo
join cs in _entity.TableTwotatus on cc.TableTwotatus.ColumnThree equals cs.ColumnThree
join app in _entity.TableFour on cc.TableFour.ColumnFour equals app.ColumnFour
join cl in _entity.TableFive on app.TableFive.ColumnFive equals cl.ColumnFive
where listint.Any(x =>x == cc.TableTwotatus.ColumnThree)
&& listintTwo.Any(x => x == os.ColumnTwo) && cc.TableSix.ColumnOne == ColumnOne
select new TableFive {ColumnFive = cl.ColumnFive, CompanyName = cl.CompanyName}).ToList();
尝试将您的呼叫更改为任何。。。包含
我敢肯定,您从充当闭包的lambda表达式中引用连接实体时遇到问题。尝试将调用更改为任何。。。包含
我敢肯定,您从充当闭包的lambda表达式中引用连接实体时遇到问题。您无法查询具有复杂类型的实体。因此,首先从EF中获得结果,然后与您的复杂类型联接
List<int> listint
List<int> listintTwo
return (from oa in _entity.TableOne
join cc in _entity.TableTwo on oa.TableSix.ColumnOne equals cc.TableSix.ColumnOne
join os in _entity.TableThree on oa.TableThree.ColumnTwo equals os.ColumnTwo
join cs in _entity.TableTwotatus on cc.TableTwotatus.ColumnThree equals cs.ColumnThree
join app in _entity.TableFour on cc.TableFour.ColumnFour equals app.ColumnFour
join cl in _entity.TableFive on app.TableFive.ColumnFive equals cl.ColumnFive).ToList().
where listint.Any(x =>x == cc.TableTwotatus.ColumnThree)
&& listintTwo.Any(x => x == os.ColumnTwo) && cc.TableSix.ColumnOne == ColumnOne
select new TableFive {ColumnFive = cl.ColumnFive, CompanyName = cl.CompanyName}).ToList();</pre>
不能查询具有复杂类型的实体。因此,首先从EF中获得结果,然后与您的复杂类型联接
List<int> listint
List<int> listintTwo
return (from oa in _entity.TableOne
join cc in _entity.TableTwo on oa.TableSix.ColumnOne equals cc.TableSix.ColumnOne
join os in _entity.TableThree on oa.TableThree.ColumnTwo equals os.ColumnTwo
join cs in _entity.TableTwotatus on cc.TableTwotatus.ColumnThree equals cs.ColumnThree
join app in _entity.TableFour on cc.TableFour.ColumnFour equals app.ColumnFour
join cl in _entity.TableFive on app.TableFive.ColumnFive equals cl.ColumnFive).ToList().
where listint.Any(x =>x == cc.TableTwotatus.ColumnThree)
&& listintTwo.Any(x => x == os.ColumnTwo) && cc.TableSix.ColumnOne == ColumnOne
select new TableFive {ColumnFive = cl.ColumnFive, CompanyName = cl.CompanyName}).ToList();</pre>