私は最初にEFコードを扱っています。多対多関連テーブルを定義する 2 つのクラスがあります。
public class UserProfile
{
[Key]
[DatabaseGeneratedAttribute(DatabaseGeneratedOption.Identity)]
public int UserId { get; set; }
public string Email { get; set; }
public virtual ICollection<Habit> Habits { get; set; }
}
public class Habit
{
[Key]
public int HabitId { get; set; }
public virtual ICollection<UserProfile> Users { get; set; }
}
現在のユーザーのすべての習慣をデータベースから選択する必要があります。私は c# に非常に慣れていません。問題は、複雑なラムダ式の操作方法を理解できないことです。私はそれを試しました:
context.Habits.Where(habit => habit.Users
.Where(user=>user.Email==User.Identity.Name)).ToList()
しかし、それは間違っています。私のラムダベースのクエリを修正してください。ありがとう。