对我在使用 WebSecurity 时不断遇到的所有奇怪异常感到有点失望。此外,与 OAuth 的不良集成并没有使它看起来更漂亮。考虑放弃概念并手动编写整个用户管理......
无论如何,我正在使用 WebSecurity 来管理用户和密码。现在我尝试实现可以删除帐户的部分。奇怪的是,这个方法不在静态类 WebSecurity 上。显然我需要通过 SimpleMembershipProvider 删除帐户。
var provider = new SimpleMembershipProvider();
provider.DeleteAccount(username);
deleteAccount 方法抛出一个无效操作异常,并显示以下消息:
You must call the "WebSecurity.InitializeDatabaseConnection" method before you call
any other method of the "WebSecurity" class. This call should be placed in an
_AppStart.cshtml file in the root of your site.
这很奇怪,因为我的 _ViewStart 中已经有了这个(否则我一开始就无法创建帐户)。
if (!WebSecurity.Initialized)
{
WebSecurity.InitializeDatabaseConnection(
"DefaultConnection",
"Users",
"UserId",
"UserName",
true);
}
这次我做错了什么?