如何将ASP.NET网站分解为可以启用/禁用的模块?

时间:2009-07-13 15:01:44

标签: asp.net

我有一个ASP.NET网站,其中包含一些独立的部分。我需要一种方法来根据用户选择打开/关闭不同的部分(每个部分在它自己的目录中)。如何阻止用户访问已关闭的部分?

3 个答案:

答案 0 :(得分:1)

我最终使用的解决方案是创建一个继承了Page的新类ModulePage。在OnInit中,它将检查我添加了IxModule的Abstract属性以查看该模块是打开还是关闭,如果它在页面上将显示,如果不是,则用户被重定向到另一个页面。必须更改每个模块中的每个页面以继承ModulePage,然后仅指定IxModule值。它工作得非常好。

答案 1 :(得分:0)

您可以要求登录这些网页。我不确定这是不是你想要的。

答案 2 :(得分:0)

您可以为每个部分查找特定的web.config应用设置。每个部分都需要一个带有sectionID app设置元素的web.config设置。

如果您使用母版页,只需检查PageLoad上的母版,然后检查用户是否可以访问配置设置中的sectionID商店。将当前用户有权访问的部分ID存储在会话或cookie中(不确定您要查找的安全类型)。有一个全局函数可以从web.config查找应用程序设置。根据调用它的页面(从哪个目录),您将获得特定部分的ID。

如果用户没有访问重定向或显示消息或其他内容。