asp.net-mvc - asp.net mvc新手问题

标签 asp.net-mvc

我最近开始研究asp.net mvc。这是我的问题。

假设应用程序上的每个页面都需要用户设置一个变量,例如一个约会。如果用户从我提供的 url 开始,那么一切都很好,因为我要求提供该日期并将其保存到 session 中。如果用户保存其他一些网址(到不同的 Controller 和操作),如何将用户重定向到第一页。

换句话说,我想我正在寻找类似 [Authorize] 属性的东西,但在应用程序级别。

感谢您的帮助。

最佳答案

我可能会创建一个基本 Controller ,我的所有 Controller 都派生自该 Controller 。在基本 Controller 中,我将重写 OnActionExecuting 方法来检查 session 中所需的变量。如果该变量不存在,我会将 ActionExecutingContext Result 属性设置为 RedirectToRouteResult 到适当的 Controller /操作以设置变量。

另一种选择是创建一个自定义 FilterAttribute,您可以用它来装饰适当的 Controller /操作,它的作用基本上相同。仅当过滤器仅适用于某些 Controller 或操作而不是您在问题中描述的所有 Controller 或操作时,我才会执行此操作。

关于asp.net-mvc - asp.net mvc新手问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/652036/

相关文章:

javascript - 这是让 ASP.NET MVC 和 javascript intellisense 发挥良好作用的 "correct"解决方案吗?

asp.net - 多个消费者,单个数据提供者 - 对于 RIA 来说还为时过早?选项?

c# - 在 SET 子句中多次指定列名 'phoneNumber'

javascript - knockout.js 信号 r getall 不起作用

asp.net-mvc - Entity Framework - 多对多关系向父表插入重复项

javascript - 具有数据库连接的 ASP.NET MVC 中的 HighChart

c# - 在 ASP.NET MVC 5 中,什么方法设置 User 对象?

c# - 如何在 jquery 中获取模型列表 <string>

asp.net-mvc - Html.BeginForm() 是必需的吗?

Asp.NET Web API - 405 - 不允许用于访问此页面的 HTTP 动词 - 如何设置处理程序映射