C# 未使用渲染渲染渲染局部视图
我想在用户使用表单身份验证登录后,在页面的右上方位置显示一些用户详细信息 登录信息在每个页面(布局页面的一部分)上重复使用 我创建了一个控制器和partialview,它将使用RenderAction调用进行渲染。如果我运行web应用程序,我看不到HTML被呈现。我确实看到控制器被调用了,但函数没有 (注意:ExtendedController派生自ASP.NET MVC的控制器类) 控制器:C# 未使用渲染渲染渲染局部视图,c#,asp.net-mvc,razor,C#,Asp.net Mvc,Razor,我想在用户使用表单身份验证登录后,在页面的右上方位置显示一些用户详细信息 登录信息在每个页面(布局页面的一部分)上重复使用 我创建了一个控制器和partialview,它将使用RenderAction调用进行渲染。如果我运行web应用程序,我看不到HTML被呈现。我确实看到控制器被调用了,但函数没有 (注意:ExtendedController派生自ASP.NET MVC的控制器类) 控制器: public class LoginInfoController : ExtendedControll
public class LoginInfoController : ExtendedController
{
private IDependencyFactory factory;
public LoginInfoController(IDependencyFactory factory)
: base(factory)
{
this.factory = factory;
}
[ChildActionOnly]
public PartialViewResult UserInfo()
{
var viewModel = new LogonInfoViewModel
{
Fullname = "Patrick Peters"
};
return PartialView(viewModel);
}
}
_Layout.cshtml:
<div class="span2 offset7">
<div class="bottom">
@{Html.RenderAction("UserInfo", "LoginInfo");}
</div>
</div>
@{Html.RenderAction(“UserInfo”,“LoginInfo”);}
_LoginInfo.cshtml:
<div class="user" style="text-align: right">
<cut HTML....>
</div>
试试这个:
[ChildActionOnly]
public PartialViewResult UserInfo()
{
var viewModel = new LogonInfoViewModel
{
Fullname = "Patrick Peters"
};
return PartialView("_LoginInfo", viewModel); // <-- change is in this line
}
[ChildActionOnly]
公共PartialViewResult用户信息()
{
var viewModel=新LogonInfoViewModel
{
Fullname=“帕特里克·彼得斯”
};
返回PartialView(“\u LoginInfo”,viewModel)//