C# 如何将下拉菜单项与一组外键关联?
我目前正在制作一个web应用程序,允许用户创建、编辑和存储桌面RPG角色信息。此应用程序使用ASP.NET MVC 5进行表示,使用Entity Framework 6进行DB访问 目前,连接角色信息和他们当前种族的数据库的设计如下所示 在角色创建期间,我希望向用户显示一个下拉列表,其中包含各个可玩种族的所有名称。但是,当发布角色创建表单时,我希望将种族的主键插入到该角色的记录中,而不是名称本身C# 如何将下拉菜单项与一组外键关联?,c#,asp.net-mvc,entity-framework,C#,Asp.net Mvc,Entity Framework,我目前正在制作一个web应用程序,允许用户创建、编辑和存储桌面RPG角色信息。此应用程序使用ASP.NET MVC 5进行表示,使用Entity Framework 6进行DB访问 目前,连接角色信息和他们当前种族的数据库的设计如下所示 在角色创建期间,我希望向用户显示一个下拉列表,其中包含各个可玩种族的所有名称。但是,当发布角色创建表单时,我希望将种族的主键插入到该角色的记录中,而不是名称本身 如何将键值与下拉列表中的种族名称安全关联?我是否需要查询数据库以获取密钥,或者是否有HTML助手方
如何将键值与下拉列表中的种族名称安全关联?我是否需要查询数据库以获取密钥,或者是否有HTML助手方法将两者之间的关联安全地烘焙到下拉列表中?HTML选择选项包含文本和值。文本显示在页面上,值与表单数据一起提交。实际上有一个很好的HTML助手方法来创建选择 下面是一个在您的情况下如何使用此功能的示例:
@Html.DropDownListFor(model=>model.RaceId,
Model.Races.Select(race=>newselectListItem
{
Text=race.Name,//显示在下拉列表中
Value=race.Id,//提交给Model.RaceId的控制器
Selected=Model.RaceId==race.Id//可以选择其中一个
}))
您可以阅读有关此方法的更多信息