int []数组包含linq查询抛出错误中的定义

时间:2013-04-01 06:02:45

标签: asp.net-mvc linq

var query = _db.Mst_Users
            .Where(item => item.CustomerUserId == customerUserId)
            .Traverse(item => _db.Mst_Users.Where(parent => item.CustomerUserId == parent.ParentId))
            .Select(item =>Convert.ToString(item.CustomerUserId)).ToArray();

在上面的查询中,我在数组中得到customerUserId

int[] ids = query;

从上面的int数组:

var getgroup = from item in _db.Mst_Group 
               where ids.Contains(item.CustomerUserId) 
               select item;

但是,它显示以下错误:

int[] does not contain a definition for Contains and the best extension method overload system.linq.iqueryable.contains<tsource>

1 个答案:

答案 0 :(得分:2)

在第一个查询中尝试ToList()而不是ToArray()。 它将返回包含“Contains”方法的List<int>

List<int> ids = query;