假设我有一个表用户和表产品:
Name Company
John Doe 1
Alex Doe 2
Michael Doe 1
ProductName Company
Tea 1
Coffee 1
CompanyId CompanyName
1 Comapny1
2 Company2
现在我想为Company.MyDomain.Com和Company2.MyDomain.Com等公司单独登录。
客户端自行注册子域。这将允许我为每个子域显示单独的产品列表。做这个的最好方式是什么?我应该使用路由吗?或者只是使用javascript用假域名替换域名? (我目前正在使用simplemembership)
答案 0 :(得分:0)
您可以使用Roles.ApplicationName
设置“appdomain”。如果您设置:Roles.ApplicationName = "Company"
,则角色提供者使用Application = Company中的角色子集。同样,您可以设置Roles.ApplicationName = "Company2"
。
不幸的是,Roles是static object,Roles.ApplicationName是 static property
“您的整个ASP.NET MVC应用程序在AppDomain中运行 是应用程序加上为所有用户提供的所有请求, 一切!!
创建静态变量时,会声明一个实例 每个请求都可以提供给整个AppDomain 用户将看到相同的值。“
因此,您必须在运行authorize或you can write your own role provider时锁定该主题。