首页 > 解决方案 > ASP.NET MVC 如何通过 Id 从另一个模型中获取名称

问题描述

我有一个问题,如何通过外键获取 details.cshtml 中的类别名称 - 工作模型中的 CategoryId?

工作.cs

using System;
using System.ComponentModel.DataAnnotations;

namespace InfoKiosk.Domain.Entities
{
    public class Work
    {
        public int WorkId { get; set; }
        public string Name { get; set; }
        public string Description { get; set; }
        public int CategoryId { get; set; }
        public Category Category { get; set; }
    }
}

类别.cs

    public class Category
    {
        public int CategoryId { get; set; }
        public string Name { get; set; }
    }

我从下拉列表中选择的类别名称,这是我从 ViewBag 填充的。

详细信息.cshtml


<dt>
    <strong>@Html.DisplayNameFor(model => model.Category):</strong> @Html.DisplayFor(model => model.???)
</dt>

标签: c#htmlcssasp.netasp.net-mvc

解决方案


您可以将其传递ViewBag给视图,可能来自Controller

string NameCategory = from c in context.Category
where c.CategoryId == work.categoryId
select c.Name

推荐阅读