我是ASP MVC的新手,我在详细信息视图中显示FK值时出现问题。
显示屏只显示字段的ID,我想显示值:
我有2个这样的模特:
namespace APP.Models
{
public class Category{
public int ID{get;set;}
public string Name {get;set;}
}
public class Book{
public int ID{get;set;}
public string Title{get;set;}
public int CategoryID{get;set;}
}
}
那么如何在我的详细信息视图中显示类别名称?:
@Html.Displayfor(model = > model.??)
我想显示类别名称而不是类别ID
谢谢你们
答案 0 :(得分:0)
您必须将模型更改为如下所示
public class Book{
public int ID{get;set;}
public string Title{get;set;}
public int CategoryID{get;set;}
public Category Category{get;set;}
}
然后
@Html.Displayfor(model => model.Category.Name)
修改:显示类别
将类别列表传递给控制器操作
中的视图ViewBag.Categories = //get all categories
然后在你看来
@Html.DropDownListFor(
book => book.CategoryID,
new SelectList((IEnumerable<Category>)ViewBag.Categories, "ID", "Name")
)