Asp.net MVC -如何编写在其中调用部分视图操作的操作



我想要渲染多个局部视图的父操作…

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")

相关内容

  • 没有找到相关文章

最新更新