【发布时间】:2021-11-11 09:16:03
【问题描述】:
我有以下代码。它给了我事件列表。在那我想得到病人的名字。
我有患者 ID,但我很困惑如何使用该 ID 获取患者姓名。
events = db.PTSessions.Where(x => x.OfficeIdFk == user.OfficeIdFk || x.PTIdFk == user.PTId).Where((a => a.AppointmentDate > start &&
(a.AppointmentTimeTo < end))).Select(m => new EventViewModel
{
id = m.SessionId,
title = m.AppointmentReason,
start = m.AppointmentTimeFrom,
end = m.AppointmentTimeTo,
allDay = false,
patientid = m.PatientIdFk,
appointmentstatus = m.AppointmentStatus,
patientname = db.Patients.Where(p => p.PatientId == m.PatientIdFk).Select(p => p.PatientName).ToString()
}).ToList();
在上面的代码中,我无法获取患者姓名并且也出现错误。
谢谢
【问题讨论】:
-
请在帖子中包含错误描述。
-
@Jackdaw 我收到此错误:LINQ to Entities 不支持指定的类型成员“PatientName”。仅支持初始化器、实体成员和实体导航属性。
-
@Nic 您在 PTSessions 和患者实体之间有适当的关系吗?如果是,那么在 PTSession 实体中,您会找到 Patient 实体(x.Patient 像这样),这将解决您的问题
标签: c# asp.net asp.net-mvc entity-framework