我想在布局和/或部分视图中显示有关登录用户的信息(用户名、公司名称、通知数量等)。这些将在每个页面上都很常见。是否有将这些数据提供给他们的技巧,或者是否可以扩展每个模型以在其中包含这些信息?
问问题
10354 次
2 回答
22
我建议您可以进行子操作并从布局中调用它,这样您就可以避免在所有视图模型中执行信息。
前任。
子动作
public class UserController
{
[ChildActionOnly]
public PartialViewResult UserInfo()
{
var userInfo = .. get the user information from session or db
return PartialView(userInfo);
}
}
局部视图
@model UserInfoModel
@Html.DisplayFor(m => m.UserName)
@Html.DisplayFor(m => m.CompanyName)
...
布局视图
<header>
@Html.Action("UserInfo", "User")
</header>
于 2012-07-18T14:51:27.043 回答
0
您仍然可以在 MVC 中创建符合您要求的母版页。查看此链接以了解如何在 MVC 中创建局部视图
于 2012-07-18T10:18:07.457 回答