【发布时间】:2019-01-10 08:31:23
【问题描述】:
在我上一个问题 (asp.net core creating/updating a foreignkey) 之后,我想从我的 Todo 模型中显示药房的名称。实际使用如下代码:
public class Todo
{
public Pharmacy Pharmacy { get; set; }
}
public class Pharmacy
{
[Key]
public int PharmacyID { get; set; }
public string Name { get; set; }
}
我的选择框连接到我的创建/编辑表单:
public class PharmacynamePageModel : PageModel
{
[BindProperty]
public int SelectedPharmacy { get; set; }
public SelectList PharmacyNameSL { get; set; }
public void PopulatePharmacysDropDownList(ApplicationDbContext _context, object selectedPharmacy = null)
{
var query = (from p in _context.Pharmacy orderby p.Name select p).ToList();
PharmacyNameSL = new SelectList(query, "PharmacyID", "Name", selectedPharmacy);
}
}
并进入我的列表(index.cshtml):
@foreach (var item in Model.Todo)
{
<tr>
<td>
@Html.DisplayFor(modelItem => item.OwnerID)
</td>
<td>
@Html.DisplayFor(modelItem => item.Pharmacy.Name)
</td>
}
我尝试了以下变体但没有成功:
- item.Pharmacy
- item.Pharmacy.PharmacyID(但我想打印名称)
我使用 SQLServer Management Studio 进行控制,并且我的列“PharmacyID”包含创建或编辑数据后的值。
希望你能帮助我;)
感谢提前!
【问题讨论】:
标签: razor asp.net-core foreign-keys entity-framework-core