C# linq EF数组.All(值)

C# linq EF数组.All(值),c#,linq,entity-framework,C#,Linq,Entity Framework,我有这张桌子: tblAdFields id (bigint) adId (bigint) listId (bigint) listFieldValue (bigint) var qAd = from adFieldVal in cwContext.tblAdFields group adField by adField.adId into adAdFields where lstFldVal.All(i => adAdFields.Select(co => co.f

我有这张桌子:
tblAdFields

id (bigint)  
adId (bigint)  
listId (bigint)  
listFieldValue (bigint) 
var qAd =
from adFieldVal in cwContext.tblAdFields
group adField by adField.adId into adAdFields
where lstFldVal.All(i => adAdFields.Select(co => co.fieldId).Contains(i))  

现在之前
在此之前,我有一份清单:

List<long> lstFldVal = new List<long>();  
lstFldVal.Add(100);  
lstFldVal.Add(120);  
lstFldVal.Add(150);  
lstFldVal.Add(170);  

但现在
但是现在我需要用数组或类列表检查我的表:
这是我的新lstFldValNew

var lstFldValNew= new int?[][] ////listId, rangeTypeId(equal, more, less, between), from, to
{ 
new int?[] { 1, 1, 100, null }, 
new int?[] { 2, 2, 125, null }, 
new int?[] { 3, 3, null, 175 }, 
new int?[] { 4, 4, 125, 175 }
};
我想知道哪个adId具有listFieldValue,其中:

1) (listId==1)和&(listFieldValue==100)

2) (listId==2)和&(listFieldValue>125)

3) (listId==3)和&(listFieldValue<175)

4) ((listId==4)和&(listFieldValue>130)和&(listFieldValue<180))

我从where的这一行开始,但得到错误:
其中lstFldValNew.All(i=>adAdFields.Select(co=>co.listId).Contains(i.listId))

没有继续

您的问题是什么?您实际收到的错误类型和消息是什么?事实上,当我使用1D数组时,一切都正常,但当我使用多维数组时,我可以执行。错误:仅使用基本类型('例如int32字符串和guid')Mohammad-请更新您的帖子,说明错误和引发错误的行(如果有)。此外,请使用有关表的所有信息更新帖子,即标记任何可为空的表列,等等。