0

複数の「オープンタスク」を持つプロジェクトモデルがあります。

[NotMapped]
public IEnumerable<Task> OpenTasks
{
   get
   {
       //All tasks where status id == 1 (= open tasks)
       return Tasks.Where(t => t.TaskStatusId == (int)EnumTaskStatus.taskStatus.openTask);
   }
}

タスクモデルには複数のユーザーがいます。

public virtual ICollection<Useraccount> Useraccounts { get; set; }

ここで、プロジェクトの特定のユーザーのすべての開いているタスクを取得したいと思います。次のようになります。

project.OpenTasks.Where(my user is in t => T.useraccounts);

しかし、私の場所の状態がどのようになるかはわかりません。

4

1 に答える 1

1

これを試して:

project.OpenTasks.Where(x => x.Useraccounts.Contains(myUser));

Useraccount等式メンバーをオーバーライドしない場合は、次のようなものを使用する必要があります。

project.OpenTasks.Where(x => x.Useraccounts.Any(x => x.Id == myUser.Id));
于 2013-03-25T15:48:34.590 に答える