我有用户列表并希望将其绑定在顶部导航栏上,这对于许多页面始终可见,我如何绑定它,我不想在每个文件上添加代码,mvc4中是否有任何方法为每个视图调用?
我的观点:
<div class="navbar-collapse collapse">
<ul class="nav navbar-nav">
<li class="dropdown">
<a href="#" class="dropdown-toggle" data-toggle="dropdown">Name Three<b class="caret"></b></a>
<ul class="dropdown-menu">
//Here i want to show data dynamically, data can be in collection.
<li><a href="#">Name one</a></li>
<li><a href="#">Name two</a></li>
<li><a href="#">Name Three</a></li>
<li><a href="#">Four</a></li>
</ul>
</li>
</ul>
</div>
控制器:
ICollection<Names> names = this.obj.GetNames();
答案 0 :(得分:3)
在这种情况下,我更喜欢使用后面的代码来调用视图包。试试这样的事情
@Html.DropDownList("Action", PathToController.GetUsers())
然后在你想要放置此方法的控制器上
public static List<SelectListItem> GetUsers(){
List<SelectListItem> ls = new List<SelectListItem>();
var result = //database call here
foreach(var temp in result){
ls.Add(new SelectListItem() { Text = temp.Name, Value = temp.ID });
}
return ls;
}