【发布时间】:2012-05-05 23:56:37
【问题描述】:
我需要开发一个基于网络的产品。此功能将根据订阅类别提供给用户,例如基本版/高级版/企业版。我想为这些订阅类别维护单一来源。
我的问题是,
如何设计基于配置/订阅类别启用功能的Web应用程序?
提前致谢
【问题讨论】:
标签: asp.net architecture
我需要开发一个基于网络的产品。此功能将根据订阅类别提供给用户,例如基本版/高级版/企业版。我想为这些订阅类别维护单一来源。
我的问题是,
如何设计基于配置/订阅类别启用功能的Web应用程序?
提前致谢
【问题讨论】:
标签: asp.net architecture
这是一个非常笼统的问题,我会笼统地回答。
您可以将角色分配给您的注册用户,然后使用IsUserInRole 来检查
看看你要展示什么,不展示什么。
为了提高速度,您可以将权限分配给用户会话,而不是总是调用IsUserInRole
您可以使用Panel 及其可见性打开和关闭页面的某些部分。同时关闭隐藏的面板的视图状态。
您也可以使用UserControls 在其中检查用户是否有权查看它,然后在 OnInit 中隐藏它,并禁用它的 ViewState。
当然,如果不允许完整页面,您可以随时进行完整重定向。
所以一个完整的页面可以有Panels和UserControls,它的浏览量取决于用户级别。
【讨论】:
你将无法得到这个现成的,你必须根据你正在使用的技术来设计应用程序。
我有一个类似的项目正在进行,我们将特征列表存储在数据库中,当页面初始化时,会在会话中加载特征列表。
在各个页面上,我们根据功能可用性显示/隐藏控件。
Offcourse Single 功能还可以根据用户角色进行分类,我们可以使用 FormAuthentication 方法检查并相应地更改页面服务器端。
如果您有任何具体的想法并有相关问题,请告诉我。
【讨论】: