我正在设计一个必须支持“ SubSites”的ASP.NET应用程序。
这个想法是让一个超级管理员来管理所有用户,全局应用程序设置和SubSite。每个子站点都有一些自己的设置(例如本地管理员,徽标和欢迎消息),每个子站点都有自己的注册用户列表。
这与使用CMS(如Joomla,SharePoint或DotNetNuke)获得的内容非常相似。实际上,我很想使用这样的平台,但是其他项目要求使我无法这样做。
在这一点上,我的问题很笼统:
使用ASP.NET 2.0 Membership,我如何指定超级管理员并根据用户已注册的SubSite对用户进行分类?
我将如何实现SubSite(应使用哪种模式等)?我对解释他人如何做到这一点的文章特别感兴趣。我想学习别人已经获得的最佳实践,而不必花几天的时间来研究大型开源项目(如DotNetNuke)的源代码。
我正在ASP.NET MVC 1.0中实现此功能,因此类似的示例将最有帮助。
更新:
我喜欢Mike Hadlow implemented multi-tenancy的方式,因此决定将他的作品作为起点。有关每个租户都有自己的this post的我如何使用SqlMembershipProvider
的信息,请参见isolated database。那解决了我的成员身份“基于子站点”的问题。
最佳答案
您尝试的操作通常称为“ multitenancy”,而不是“子站点”
对此有一个similar question,并且被接受的答案似乎合理。