ASP.NET MVC - 下拉列表选择 - 部分视图和模型绑定
我是ASP.NET MVC的新手,我正在努力找到最好的方法来做到这一点。这可能很简单,但我只是想做正确的事情所以我想我会问。
让我们说我的模型是这样的:
任务 - ID,描述,AssignedStaffMember
StaffMember - Id,FirstName,LastName
在我看来,我想创建一个新任务。我创建了一个强类型的Razor视图,并且可以使用EditorFor为Description创建文本框但是AssignedStaffMember呢?
我想要一个当前所有员工的下拉列表,并且可以选择一个,然后将其提交给一个动作方法
NewTask(string description, StaffMember assignedStaffMember)
或者我可以为staffId而不是StaffMember对象使用int,并在action方法中查找它。
做这个的最好方式是什么?我需要去数据库以获取员工名单,所以这就是我的想法:
对员工下拉列表进行局部查看,将使用几次并使用@Html.Action("ListStaff", "Staff")
来调用它。然后动作方法有
public ActionResult ListStaff()
{
IEnumerable<StaffMember> model = _serviceLayer.GetAllStaff();
return PartialView(model);
}
但是我不确定它如何与模型绑定一起工作,我的理解是它必须有正确的名称才能提交表单,我需要将名称传递给局部视图以放置元素我猜?
不要让它调用控制器来获取工作人员,而是创建一个包含我的Task和IEnumerable possibleStaff集合的ViewModel。可能会将此信息发送到局部视图。
一个Html助手?
编辑器可以以某种方式使用?
哪一个(或者更多)最好?以及如何进行模型绑定?
没有找到相关结果
已邀请:
1 个回复
迪擅哨乘傅
在控制器中
在视图中(强烈绑定到TaskDetailsViewModel)