C# 如何使视图完全或部分渲染?
我有一个C# 如何使视图完全或部分渲染?,c#,asp.net-mvc,asp.net-mvc-3,razor,browser-history,C#,Asp.net Mvc,Asp.net Mvc 3,Razor,Browser History,我有一个家庭控制器,带有一个动作关于。我想实现这种行为: Case#1用户打开页面/home/about,视图完全呈现(returnview();) Case#2用户在主页上并单击关于的链接,我想使用history.pushState更改url并部分呈现(return PartialView();) 如何实现此行为?您可以使用Request.IsAjaxRequest检测控制器操作是否使用Ajax请求调用 作为一种替代方法,我建议将视图拆分为更小的部分,例如通过执行Html.RenderPart
家庭控制器
,带有一个动作关于
。我想实现这种行为:
Case#1
用户打开页面/home/about
,视图完全呈现(returnview();
)
Case#2
用户在主页上并单击关于的链接,我想使用history.pushState更改url并部分呈现(return PartialView();
)
如何实现此行为?您可以使用Request.IsAjaxRequest检测控制器操作是否使用Ajax请求调用
作为一种替代方法,我建议将视图拆分为更小的部分,例如通过执行Html.RenderPartial(“AboutBox”)来使用About.aspx视图的部分视图。这给了您重用的能力,而不必用if语句来混乱您的操作。又是一个例子
在ActionMethodSelectorAttribute中选择ActionMethod控件