Membership.ApplicationName
是静态字符串。
我的问题是,如果我想更改此值以查询同一数据库中另一个应用程序的成员身份,则该更改是永久性的,这意味着当前站点的“应用程序名称”现在已全局更改为该值。
在理想世界中,我可以调用Membership.GetUser($username, $ApplicationName)
,但是这样的功能不存在。
谁能提供任何想法?
最佳答案
Membership.ApplicationName在设计上是全局的。 MSDN文档指出,如果您需要一个可以更改此值的应用程序,则该应用程序应为单个用户应用程序。
http://msdn.microsoft.com/en-us/library/system.web.security.membership.applicationname.aspx
(请阅读“备注”下的“注意”部分)
有两种方法可以解决您的问题:
1)创建一个单独的应用程序来管理用户。
2)编写具有您建议的方法的自定义成员资格提供程序。您还需要编写数据访问层,但是数据库结构定义良好,因此应该不要太难。
关于c# - Membership.ApplicationName问题,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/2764585/