for (int i = 0; i < list.Count; i++)
{
var doesrequestExist = cxt.Friends.FirstOrDefault(u => (u.User_Id == incID) &&
(u.Friend_UserId == (list.ElementAt(i).userid)) &&
(u.Request_Status == 0 || u.Request_Status == 1));
if (doesrequestExist != null)
{
}
我在“list.ElementAt(i).userid”收到错误 错误: LINQ to Entities无法识别方法'Int32 ToInt32(Int32)'方法,并且此方法无法转换为存储表达式。
编辑:
通过删除上面查询中的convert.toint32获取: LINQ to Entities无法识别方法'FriendsList ElementAt [FriendsList](System.Collections.Generic.IEnumerable`1 [FR_Network.FR_Network + FriendsList],Int32)'方法,并且此方法无法转换为商店表达式。
答案 0 :(得分:1)
从你的linq中排除Convert.ToInt32(list.ElementAt(i).userid))。
for (int i = 0; i < list.Count; i++)
{
int friendId = Convert.ToInt32(list.ElementAt(i).userid);
var doesrequestExist = cxt.Friends.FirstOrDefault(u => (u.User_Id == incID) &&
(u.Friend_UserId == friendId &&
(u.Request_Status == 0 || u.Request_Status == 1));
if (doesrequestExist != null)
{
}
}