我想要渲染多个局部视图的父操作…
public ActionResult DashBoard()
{
AttendanceController ac = new AttendanceController();
ac.MyInformation();
return View();
}
child操作,我想在DashBoard中做一个局部视图…
public ActionResult MyInformation()
{
string currentUserId = User.Identity.GetUserId();
var us = from u in db.Users
join s in db.Designations
on new { id = u.DesignationID } equals new { id = s.DesignationID }
where u.Id == currentUserId
select new ViewEmployees
{
EmployeeCode = u.UserName,
EmployeeName = u.Name,
Father_Name = u.Father_Name,
DesignationName = s.DesignationName,
EmployeeType = u.EmployeeType,
Email = u.Email,
Mobile = u.Mobile
};
return PartialView("_MyInfo", us);
}
如何将MyInformation(Partial View)添加到DashBoard
您可以使用Html.Action
帮助器。你的父控制器动作应该只呈现一个视图:
public ActionResult DashBoard()
{
return View();
}
和
@Html.Action("MyInformation", "Attendance")
你可以阅读更多关于子操作和Html之间的区别。动作和Html。本文中的部分帮助器:http://haacked.com/archive/2009/11/18/aspnetmvc2-render-action.aspx/
将您的仪表板动作更改为:
public ActionResult DashBoard()
{
return View();
}
在你的主视图(在你的例子中是仪表板视图)中使用如下内容:
<div id="myPartialView">
@Html.Action("MyInformation", "ControllerName")
</div>
因此,调用MyInformation
操作,该操作返回的视图将显示在指定的位置
在父视图中使用RenderAction
。如果您想作为子视图,则使用Darin
@{Html.RenderAction("MyInformation", "Attendance");}
可以使用Html。行动辅助。你的父控制器动作应该只呈现一个视图:
public ActionResult DashBoard()
{
return View();
}
和
@Html.Action("MyInformation", "Attendance")