調用時,我有一個使用SimpleMembership來驗證用戶的MVC4應用程序。WebSecurity.InitializeDatabaseConnection失敗,並且「角色管理器功能尚未啓用」。當從控制檯程序
我想從控制檯程序添加用戶。
控制檯程序引用具有將執行用戶創建的方法的類庫。
它看起來像這樣:
public class UserBuilder
{
private static readonly SimpleMembershipInitializer _membershipInitializer;
private static readonly bool _isInitialized;
private static readonly object _initializerLock = new object();
static UserBuilder()
{
LazyInitializer.EnsureInitialized(ref _membershipInitializer, ref _isInitialized, ref _initializerLock);
}
public void HandleEvent(UserAdded @event)
{
if (!WebSecurity.UserExists("ReportModels"))
{
WebSecurity.CreateUserAndAccount("ReportModels", "ReportModels");
};
}
private class SimpleMembershipInitializer
{
public SimpleMembershipInitializer()
{
WebSecurity.InitializeDatabaseConnection("DefaultConnection", "UserProfile", "UserId", "UserName", autoCreateTables: true);
}
}
}
當我開始我的控制檯應用程序我在開始WebSecurity.InitializeDatabaseConnection
行獲得System.Configuration.Provider.ProviderException {"The Role Manager feature has not been enabled."}
。
我需要做些什麼才能做到這一點?
我已經試過:
- 添加NuGet包微軟ASP.NET網頁2 Web數據到控制檯項目和類庫項目。
- 本帖子中列出的答案爲:SimpleMembershipProvider not working。
- 驗證了連接字符串。
- 驗證了這些表在數據庫中。
- 驗證了創建用戶並從MVC4項目驗證它們的工作。