为此,我有三个模型:医院,AspNetUsers,UserHospitals。
这是UserHospitals模型:
public class UserHospital
{
[Key]
public int UserHospitalID { get; set; }
public int HospitalID { get; set; }
public Hospital Hospitals { get; set; }
public string Id { get; set; }
public ApplicationUser Users { get; set; }
}使用它,我可以将用户ID和医院ID添加到这个表中。
现在,我需要检查哪个医院的用户连接到了。
在返回医院列表的控制器上,我只需要返回用户有连接的医院。
这返回所有医院,我如何过滤它,以显示只有当用户有一个与医院在UserHospitals上的连接?
public ActionResult Index()
{
return View(db.Hospitals.ToList());
}我不想添加一个新的视图模型来加入模型或者什么的
==编辑==
医院模型
public class Hospital
{
[Key]
public int HospitalID { get; set; }
public string Name { get; set; }
public virtual ICollection<HospitalSpeciality> HospitalSpecialities { get; set; }
public virtual ICollection<UserHospital> UserHospitals { get; set; }
}

发布于 2016-05-05 13:59:01
试试这个:
public ActionResult Index()
{
var result =db.Hospitals.Include("UserHospitals").where(x=> x.UserHospitals.Any(x=>x.Id== userId)).ToList();
return View(result);
}https://stackoverflow.com/questions/37052129
复制相似问题