假设我有这个
public class OrganisationData
{
public NavigationData navigationData {get; set; }
}
然后
public class NavigationData
{
public string choice {get;set;}
//other properties omitted
}
我认为这个
<% Using(Html.BeginForm()){%>
<p>
<% = Html.RadioButtonFor(x => x.organizationData.navigationData.choice, "1")%>
</p>
//More choices
<%}%>
用户首先进入该视图,我希望预选第一个RadioButton。
感谢您的帮助。
最佳答案
您应该在GET控制器操作中设置要发送给Viewengine的Model中的值。
就像是:
ActionResult MyMethod()
{
var vm = new OrganisationData { NavigationData = new NavigationData{ choice = 1 } };
return View("myview", vm);
}
不要像John所建议的那样将逻辑放在视图中,这是一个庞大的设计反模式,从长远来看只会使您痛苦。
编辑:
将默认值从控制器传递给视图意味着控制器已决定默认值是什么。这是逻辑,因此不属于视图。在控制器中进行操作使其可测试。