我有一些代码用于确定用户是否已登录,我想将其放在 ASP.NET 网站的每个页面上,以便只有登录的用户才能查看它。问题是该站点被分成多个项目/解决方案,因此维护单个代码可能很困难。
我在想我可以创建一个继承 forSystem.Web.UI.Page
和 overrides的类Page_Init
,但这需要更改所有页面,以便它们从新的新类继承。此外,我认为这不适用于跨项目。
所以我想从另一个方面解决问题:使用 AOP。我以前从未使用过 Aspect,但看起来我可以使用 PostSharp 编写一个在每个Page_Init
(或者可能Page_Load
?)之前注入代码的 Aspect。这可能是一个快速的解决方案,但如果我需要一个页面来不执行身份验证检查(每个人都可用),我可能会遇到问题。
澄清一下,我已经有了一个登录解决方案;我只是在寻找每个页面上的登录信息。