MVC 5 自定义成员资格提供程序配置
MVC 5 Custom Membership Provider Configuration
我正在尝试将 ASP.NET 应用程序迁移到 MVC 5。最后要迁移的部分是成员资格提供程序。我无法配置应用程序以访问现有的成员资格提供商。
我首先查看了 MSDN Sample Membership Provider Implementation 上的文档。这导致我在 Web.config 中输入以下内容:
<membership defaultProvider="MyMembershipProvider">
<providers>
<clear />
<add
name="MyMembershipProvider"
type="my.namespace.MyMembershipProvider, my.package.name"
connectionStringName="MyServiceContext"
enablePasswordRetrieval="false"
enablePasswordReset="true"
requiresQuestionAndAnswer="false"
requiresUniqueEmail="false"
writeExceptionsToEventLog="true"
/>
</providers>
</membership>
<roleManager defaultProvider="MyRoleProvider">
<providers>
<clear />
<add
name="MyRoleProvider"
type="my.namespace.MyRoleProvider, my.package.name"
/>
</providers>
</roleManager>
当我尝试 运行 应用程序时,出现以下错误:
The configuration section 'membership' cannot be read because it is missing a section declaration
我可能做错了什么?
哦!
结果我把 <membership>
标签放在顶级 <configuration>
部分,但它属于 <system.web>
:
<configuration>
... stuff ...
<system.web>
<membership ...>
... stuff from question description ...
</membership>
<roleManager ...>
... stuff from question description ...
</roleManager>
</system.web>
</configuration>
更改文件中的位置修复了错误。
我正在尝试将 ASP.NET 应用程序迁移到 MVC 5。最后要迁移的部分是成员资格提供程序。我无法配置应用程序以访问现有的成员资格提供商。
我首先查看了 MSDN Sample Membership Provider Implementation 上的文档。这导致我在 Web.config 中输入以下内容:
<membership defaultProvider="MyMembershipProvider">
<providers>
<clear />
<add
name="MyMembershipProvider"
type="my.namespace.MyMembershipProvider, my.package.name"
connectionStringName="MyServiceContext"
enablePasswordRetrieval="false"
enablePasswordReset="true"
requiresQuestionAndAnswer="false"
requiresUniqueEmail="false"
writeExceptionsToEventLog="true"
/>
</providers>
</membership>
<roleManager defaultProvider="MyRoleProvider">
<providers>
<clear />
<add
name="MyRoleProvider"
type="my.namespace.MyRoleProvider, my.package.name"
/>
</providers>
</roleManager>
当我尝试 运行 应用程序时,出现以下错误:
The configuration section 'membership' cannot be read because it is missing a section declaration
我可能做错了什么?
哦!
结果我把 <membership>
标签放在顶级 <configuration>
部分,但它属于 <system.web>
:
<configuration>
... stuff ...
<system.web>
<membership ...>
... stuff from question description ...
</membership>
<roleManager ...>
... stuff from question description ...
</roleManager>
</system.web>
</configuration>
更改文件中的位置修复了错误。