我正在部分查看包含部门信息的部门.我有员工的页面视图.在员工视图中我使用部门视图来显示员工部门.我的员工模型如下
class Employee { public string EmployeeName{get;set}; public Department EmployeeName{get;set}; } class Department { public string DepartmentName{get;set}; }
我在员工页面视图上提交了按钮.
当我提交员工视图时,我将Department对象视为null.
你能否告诉我如何在回发期间获得儿童部门模型.
Coltroller代码
[HttpGet] public ActionResult Employee2() { Employee e = new Employee(); e.EmployeeName = "Prashant"; e.Department = new Department() { DepartmentName = "Phy" }; return View(e); } [HttpPost] public ActionResult Employee2(Employee e) { return View(e); }
查看
部门
@model MvcApplication2.Models.Department <script src="~/Scripts/jquery-1.7.1.min.js"></script> <script src="~/Scripts/jquery.validate.min.js"></script> <script src="~/Scripts/jquery.validate.unobtrusive.min.js"></script> <fieldset> <legend>Department</legend> <div class="editor-label"> @Html.LabelFor(model => model.DepartmentName) </div> <div class="editor-field"> @Html.EditorFor(model => model.DepartmentName) @Html.ValidationMessageFor(model => model.DepartmentName) </div> </fieldset> <div> @Html.ActionLink("Back to List","Index") </div>
雇员
@model MvcApplication2.Models.Employee @{ ViewBag.Title = "Employee"; } <h2> Employee</h2> @using (Html.BeginForm("Index","Home")) { <fieldset> <legend>Employee</legend> <div class="editor-label"> @Html.LabelFor(model => model.EmployeeName) </div> <div class="editor-field"> @Html.EditorFor(model => model.EmployeeName) @Html.ValidationMessageFor(model => model.EmployeeName) </div> @Html.Partial("Department",Model.Department) <p> <input type="submit" value="EmployeeSave" /> </p> </fieldset> } @section Scripts { @Scripts.Render("~/bundles/jqueryval") }
解决方法
首先尝试搜索.之前已经多次询问过这个问题.
这是一种方法:
但是这个看起来更像是你所追求的:
Post a form with multiple partial views
使用editortemplates代替partials.
您遇到的问题是,当您的DepartmentName文本框未正确命名时,您的控制器无法读取它.你的POST将是EmployeeName = Prashant& DepartmentName = Phy因此Department为null,因此出错.
原文地址:https://www.jb51.cc/aspnet/248616.html
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。