我有一个正在处理相关数据的 Web 应用程序,我创建了一个推荐实体,其中包含其他属性之间的患者、请求者和此推荐的不同顾问。我还有患者、请求者和顾问模型。
我已经能够使用患者和请求者的选择列表,他们与转介实体具有 1:n 关系。但是,我与顾问之间存在问题,因为他们具有 n:m 关系,我正在使用多个列表,我可以显示我的顾问列表并选择多个顾问,但当我发布数据时,它不绑定到 ReferralConsultants我正在失去它。
这是引用控制器的 [get] 编辑操作。
var referral = await _context.Referral
.Include(r => r.Patient)
.Include(r => r.Requester)
.Include(r => r.ReferralConsultants)
.ThenInclude(r => r.Consultant)
.AsNoTracking()
.FirstOrDefaultAsync(r => r.ID == id);
if (referral == null)
{
return NotFound();
}
ViewData["Patients"] = new SelectList(_context.Patient, "ID", "FullName", referral.PatientID);
ViewData["Requesters"] = new SelectList(_context.Requester, "ID", "FullName", referral.RequesterID);
var consultants = from c in _context.Consultant
select new
{
ConsultantID = c.ID,
c.FullName
};
ViewData["Consultants"] = new MultiSelectList(consultants, "ConsultantID", "FullName", referral.ReferralConsultants);
return View(referral);
这是我的观点
<form asp-action="Edit">
<div asp-validation-summary="ModelOnly" class="text-danger"></div>
<input type="hidden" asp-for="ID" />
<div class="form-group">
<h3>Patient Information</h3>
<label asp-for="PatientID" class="control-label">Patient</label>
<select asp-for="PatientID" class="form-control" asp-items="ViewBag.Patients"></select>
<span asp-validation-for="PatientID" class="text-danger"></span>
我唯一缺少的是当我处于[帖子]编辑操作时能够知道哪些顾问已被选择。
繁花不似锦
慕的地6264312
相关分类