我对ASP.NET MVC相当陌生,并且正在尝试找出实现此目的的最佳方法。这可能很简单,但我只是想正确地做事,所以我想我会问。ASP.NET MVC - 下拉列表选择 - 部分视图和模型绑定
可以说我有一个模型,它是这样的:
任务 - ID,描述,AssignedStaffMember
StaffMember - 身份证,名字,姓氏
在我看来,我想创建一个新的任务。我创建了一个强类型的Razor视图,并且可以使用EditorFor为描述创建文本框,但AssignedStaffMember怎么样?
我希望有一个下拉当前所有工作人员的名单,并有选择一个,那么这个被提交到这是 NewTask(string description, StaffMember assignedStaffMember)
要么我也可以有,STAFFID代替StaffMember对象的int操作方法的选择并在动作方法中查找它。
这样做的最好方法是什么?我需要去到数据库以获取列表关的工作人员,所以这里就是我想:
做一个局部视图为员工下拉的上市,这将用过几次,并使用
@Html.Action("ListStaff", "Staff")
来叫它。操作方法则有public ActionResult ListStaff() { IEnumerable<StaffMember> model = _serviceLayer.GetAllStaff(); return PartialView(model); }
但是我不知道这是如何将与模型绑定工作,我的理解是,它必须有正确的名称为表单提交它,我需要将名称传递给部分视图以将其放在元素上我猜?
而不是让它调用控制器来获得工作人员,使一个ViewModel包含我的任务和一个IEnumerable possibleStaff集合。可能会将此信息发送到部分视图。
一个Html Helper?
EditorFor可能以某种方式被使用?
哪一个(或更多)会是最好的?以及我将如何做模型绑定?
+1你用过描述您的问题:) – 2014-06-25 14:23:00