我的上下文Category
包含一组SubCategories
实体的实体,该实体具有一组Instruments
实体。
我正在使用 Razor 语言在 cshtml 视图上创建一个引导痕迹导航。 对于给定的仪器(控制器中的详细信息方法(,我需要访问我的相关Category
。
我可以访问我的相关子类别,甚至可以访问SubCategory.CategoryId
但我不知道为什么Category.Name
给我 null。
代码:
<nav aria-label="breadcrumb">
<ol class="breadcrumb">
<li class="breadcrumb-item"> <!-- Getting SubCategory.Category=NULL -->
@Html.ActionLink(Model.SubCategory.Category.Name, "Details", "Categories", new { id = @Model.SubCategory.CategoryId }, null)
<li class="breadcrumb-item">
@Html.ActionLink(Model.SubCategory.Name, "Details", "SubCategories", new { id = @Model.SubCategoryId }, null)
</li>
<li class="breadcrumb-item active" aria-current="page">@Model.Name</li>
</ol>
</nav>
我通过在ViewBag中传递类别名称来解决它:
var CatName = from c in _context.Category
where c.Id == instrument.SubCategory.CategoryId
select c.Name;
ViewBag.catName = CatName.FirstOrDefault();
并使用传递给视图的 ViewBag 设置string @categoryName
。