猿问

linq firstordefault 返回不是第一个值

public bool WetherTaskComplete(string taskID, string userID)
        {
            var var = (from p in this.ObjectContext.TASK
                       from q in this.ObjectContext.TASKASSIGN
                       where (p.ID == q.ID || p.WORKID == q.ID) && p.ID == taskID
                       orderby q.ASSIGNERTIME
                       select q.ASSIGNERID).Distinct();
            string id = var.firstordefault();

            bool var1 = id.Equals(userID);
            return var1;
        }

为什么id值不是第一值,而是第二个值,有时候可以返回第一个值,有时候不能返回第一个值。


慕雪6442864
浏览 317回答 2
2回答

一只萌萌小番薯

要么排序,要么就直接用bool 别让它推断了

德玛西亚99

因为你没有对数据进行order.从数据库中取出来的数据是乱序的,有时候是1,2,有时候是2,1.
随时随地看视频慕课网APP
我要回答