ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

C#-MVC中用户到期的最佳位置

2019-12-10 08:10:10  阅读:216  来源: 互联网

标签:c asp-net-mvc design-patterns


我有一个ASP.NET MVC Web应用程序,上面有一个非常基本的订阅系统.

我的问题是在哪里最好地实现订阅结束日期.目前,以下代码位于Site.master中:

    if (Profile.expires < DateTime.Today)
    {
        FormsAuthentication.SignOut();
        FormsAuthentication.RedirectToLoginPage();
    }

因此,每当有人访问任何页面时,此代码都会检查其用户名是否已过期.

我显然要将这段代码从Site.master页面移到Model.Helpers(或类似的东西)中,但是我想知道是否仍应从其他地方调用该代码(与MVC模式保持关联) .显然,我会将代码从site.master移出,例如Model.Helpers.Validate()

从我看来,从那里开始,可能性是:

>从site.master调用方法
>在global.asax文件中实现该方法,例如使用路由约束.
>通过所有动作的属性以某种方式实现该方法(不确定是否可行或如何实现)

谁能建议哪种方法最好?如果还有另一种最接近MVC设计模式的替代方法,请告诉我.我真的很想以“正确”的方式做到这一点:)

解决方法:

我通常通过重写onAuthorization方法将其放入基本控制器中.

标签:c,asp-net-mvc,design-patterns
来源: https://codeday.me/bug/20191210/2100324.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有