加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

asp.net – SimpleMembershipProvider不工作

发布时间:2020-12-15 18:33:12 所属栏目:asp.Net 来源:网络整理
导读:我开始一个新的互联网项目与VS2012,我正在重组我的项目一点,我似乎不能保持SimpleMemberhsipProvider工作。基本上,我所做的一切都是将模型对象与一些其他项目一起移动到一个核心项目中。我已经实现了Ninject,我试图通过使用存储库模式来获取我的数据来抽
我开始一个新的互联网项目与VS2012,我正在重组我的项目一点,我似乎不能保持SimpleMemberhsipProvider工作。基本上,我所做的一切都是将模型对象与一些其他项目一起移动到一个核心项目中。我已经实现了Ninject,我试图通过使用存储库模式来获取我的数据来抽象Entity。我真的不觉得我已经改变了当前的项目,但是由于某些原因,当我启动应用程序时,我得到:

{“The Role Manager feature has not been enabled.”}

框架提供的ActionFilter是在以下情况下抛出错误的地方:

WebSecurity.InitializeDatabaseConnection(“DefaultConnection”,“UserProfile”,“Id”,“UserName”,autoCreateTables: true);

叫做。

这里有一些stacktrace:

[ProviderException: The Role Manager feature has not been enabled.]
System.Web.Security.Roles.EnsureEnabled() +9561885
System.Web.Security.Roles.get_Provider() +8
WebMatrix.WebData.WebSecurity.InitializeProviders(DatabaseConnectionInfo
connect,String userTableName,String userIdColumn,String
userNameColumn,Boolean autoCreateTables) +104
WebMatrix.WebData.WebSecurity.InitializeDatabaseConnection(String
connectionStringName,
String userNameColumn,Boolean autoCreateTables) +100
InoutBoard.Core.Infrastructure.Filters.SimpleMembershipInitializer..ctor()
in c:UsersKyleDocumentsVisual Studio
2012ProjectsInoutBoardInoutBoard.CoreInfrastructureFiltersInitializeSimpleMembershipAttribute.cs:42

[InvalidOperationException: The ASP.NET Simple Membership database
could not be initialized. For more information,please see
07000
InoutBoard.Core.Infrastructure.Filters.SimpleMembershipInitializer..ctor()
in c:UsersKyleDocumentsVisual Studio
2012ProjectsInoutBoardInoutBoard.CoreInfrastructureFiltersInitializeSimpleMembershipAttribute.cs:46

我在github上的代码在以下链接https://github.com/keroger2k/InoutBoard

解决方法

第一种方式

检查sphair’s answer出(在当前线程)。

第二种方式

将以下程序集添加到web.config中:

<system.web>
  <compilation debug="true" targetFramework="4.5">
    <assemblies>
      <add assembly="WebMatrix.Data,Version=2.0.0.0,Culture=neutral,PublicKeyToken=31bf3856ad364e35"/>
      <add assembly="WebMatrix.WebData,PublicKeyToken=31bf3856ad364e35"/>
    </assemblies>
  </compilation>
</system.web>

更新

WebMatrix.WebData程序集包含一个初始化成员资格/角色提供程序并启用RoleManager(PreApplicationStartCode.Start)的启动方法。但ASP.NET找不到在你的情况下运行。通过添加这两行代码,我们强制ASP.NET搜索这些程序集以获取PreApplicationStartMethodAttribute(s)。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读