如何设置ASP.NET MVC项目,有效阻止通过直接URL访问返回部分视图的控制器?

2026-03-30 12:541阅读0评论SEO教程
  • 内容介绍
  • 相关推荐

本文共计171个文字,预计阅读时间需要1分钟。

如何设置ASP.NET MVC项目,有效阻止通过直接URL访问返回部分视图的控制器?

如果存在一个名为UsersController的控制器,其操作如下:

csharppublic ActionResult ActiveUsers(){ IQueryable recentUsers=repo.GetRecentUsers(); Return PartialView(recentUsers);}

这是通过在整个应用中使用Html.RenderAction()方法来实现的。

如果有一个名为UsersController的控制器,其操作如下:

public ActionResult ActiveUsers() { IQueryable<TBL_USERS> recentUsers = repo.GetRecentUsers(); Return PartialView(recentUsers); }

这是通过整个ap中的Html.RenderAction()来调用的.

如果用户直接在地址栏中导航到Users / ActiveUsers,则部分视图将在浏览器中呈现.

有可能阻止这个吗?

使用ChildActionOnlyAttribute( haacked.com/archive/2009/11/18/aspnetmvc2-render-action.aspx)

[ChildActionOnly] public ActionResult Menu() { var menu = GetMenuFromSomewhere(); return PartialView(menu); }

如何设置ASP.NET MVC项目,有效阻止通过直接URL访问返回部分视图的控制器?

本文共计171个文字,预计阅读时间需要1分钟。

如何设置ASP.NET MVC项目,有效阻止通过直接URL访问返回部分视图的控制器?

如果存在一个名为UsersController的控制器,其操作如下:

csharppublic ActionResult ActiveUsers(){ IQueryable recentUsers=repo.GetRecentUsers(); Return PartialView(recentUsers);}

这是通过在整个应用中使用Html.RenderAction()方法来实现的。

如果有一个名为UsersController的控制器,其操作如下:

public ActionResult ActiveUsers() { IQueryable<TBL_USERS> recentUsers = repo.GetRecentUsers(); Return PartialView(recentUsers); }

这是通过整个ap中的Html.RenderAction()来调用的.

如果用户直接在地址栏中导航到Users / ActiveUsers,则部分视图将在浏览器中呈现.

有可能阻止这个吗?

使用ChildActionOnlyAttribute( haacked.com/archive/2009/11/18/aspnetmvc2-render-action.aspx)

[ChildActionOnly] public ActionResult Menu() { var menu = GetMenuFromSomewhere(); return PartialView(menu); }

如何设置ASP.NET MVC项目,有效阻止通过直接URL访问返回部分视图的控制器?