0
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 toEntitiesはメソッド「Int32ToInt32(Int32)」メソッドを認識せず、このメソッドをストア式に変換できません。

編集:

上記のクエリでconvert.toint32を削除すると、次のようになります。LINQ to Entitiesは、メソッド'FriendsList ElementAt [FriendsList](System.Collections.Generic.IEnumerable`1 [FR_Network.FR_Network + FriendsList]、Int32)'メソッドを認識しません。メソッドをストア式に変換することはできません。

4

1 に答える 1

1

Convert.ToInt32(list.ElementAt(i).userid)) をlinqから除外します。

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)
    {
    }
}
于 2012-05-07T11:33:04.843 に答える