LINQ查询包括长类型数据的数组

时间:2012-04-03 08:34:28

标签: arrays asp.net-mvc-3 linq contains

我有一个Ling查询,在这个查询中我想根据数组中的数据(PrdIdArr)获取数据。

在第6行u.START_PRD_ID应该与数组中的数据匹配(PrdIdArr),但我不能

var mainQuery = (from o in db.OPERATIONs
                join u in db.UNITs on o.OP_UNIT_ID equals u.UNIT_ID
                join x in db.XIDs on u.UNIT_ID equals x.UNIT_ID
                where o.OP_OT_CODE == OtCode
                where x.IDTYP_CD == "BSN"
                **where u.START_PRD_ID == PrdIdArr[0]**
                where u.START_PRD_ID == new List<long>(PrdIdArr.Any<long>)
                select new
                {
                    ...

                }).Take(_RowNumber);
var result = mainQuery.ToList();
data = this.Json(result);
data.JsonRequestBehavior = JsonRequestBehavior.AllowGet;

return data;

我无法正确地将字段(u.START_PRD_ID)的数据与数组中的每个数据(PrdIdArr)进行匹配!

任何人都可以帮助我吗?

1 个答案:

答案 0 :(得分:0)

如果您希望获取包含在查询和数组中的字段,请使用拦截?

 var c = a.Intersect(b);

但是,上面将删除重复字段。

你也可以使用contains

b.Contains(a)