Asp.net mvc 3 实现自定义成员资格提供程序时,usercreate出现问题
我想为我的asp.net mvc应用程序创建一个自定义成员资格提供程序,但默认CreateUser()方法中的参数数量不是我想要的。因为我的用户表不同,所以我希望传递自己的参数。以下是我用于UserCreate()方法的代码: 这里是我得到的错误:Asp.net mvc 3 实现自定义成员资格提供程序时,usercreate出现问题,asp.net-mvc-3,membership-provider,Asp.net Mvc 3,Membership Provider,我想为我的asp.net mvc应用程序创建一个自定义成员资格提供程序,但默认CreateUser()方法中的参数数量不是我想要的。因为我的用户表不同,所以我希望传递自己的参数。以下是我用于UserCreate()方法的代码: 这里是我得到的错误: 错误2 MyMemberShipProvider.CreateUser(字符串,字符串,字符串,字符串,字符串,bool,object,out System.Web.Security.MembershipCreateStatus)∶找不到合适的方法来
错误2 MyMemberShipProvider.CreateUser(字符串,字符串,字符串,字符串,字符串,bool,object,out System.Web.Security.MembershipCreateStatus)∶找不到合适的方法来覆盖一个好方法是同时使用成员资格提供程序和配置文件提供程序
<membership defaultProvider="MongoDBProvider" userIsOnlineTimeWindow="15">
<providers>
<clear />
<add
name="MongoDBProvider"
type="ASPNetProvidersForMongoDB.MongoDBMembershipProvider, ASPNetProvidersForMongoDB"
connectionStringName="MongoProvidersDBConnStr"
enablePasswordRetrieval="true"
enablePasswordReset="true"
requiresQuestionAndAnswer="false"
writeExceptionsToEventLog="true"
mongoProviderDatabaseName ="aspnetproviderdb"
mongoProviderUsersCollectionName="Users"
applicationName="WebUI4"
/>
</providers>
</membership>
<roleManager defaultProvider="MongoDBProvider" enabled="true">
<providers>
<clear />
<add applicationName="WebUI4"
name="MongoDBProvider"
type="ASPNetProvidersForMongoDB.MongoDBRolesProvider, ASPNetProvidersForMongoDB"
connectionStringName="MongoProvidersDBConnStr"
writeExceptionsToEventLog="true"
mongoProviderDatabaseName ="aspnetproviderdb"
mongoProviderUsersCollectionName="Roles"
/>
</providers>
</roleManager>
<profile defaultProvider="MongoDBProvider" inherits="MyCompany.Security.Profile.ProfileCommon">
<providers>
<add
applicationName="WebUI4"
name="MongoDBProvider"
type="ASPNetProvidersForMongoDB.MongoDBProfileProvider, ASPNetProvidersForMongoDB"
connectionStringName="MongoProvidersDBConnStr"
writeExceptionsToEventLog="true"
mongoProviderDatabaseName ="aspnetproviderdb"
mongoProviderUsersCollectionName="Profiles" />
</providers>
</profile>
会员资格提供商将管理用户的创建、密码验证、跟踪谁以及何时登录到您的应用程序等
配置文件提供程序允许您管理用户的多个属性
因此,您需要执行以下操作:
请参见此处msdn.microsoft.com/en-us/library/0580x1f5.aspx或msdn.microsoft.com/en-us/library/ta63b872.aspx
<membership defaultProvider="MongoDBProvider" userIsOnlineTimeWindow="15">
<providers>
<clear />
<add
name="MongoDBProvider"
type="ASPNetProvidersForMongoDB.MongoDBMembershipProvider, ASPNetProvidersForMongoDB"
connectionStringName="MongoProvidersDBConnStr"
enablePasswordRetrieval="true"
enablePasswordReset="true"
requiresQuestionAndAnswer="false"
writeExceptionsToEventLog="true"
mongoProviderDatabaseName ="aspnetproviderdb"
mongoProviderUsersCollectionName="Users"
applicationName="WebUI4"
/>
</providers>
</membership>
<roleManager defaultProvider="MongoDBProvider" enabled="true">
<providers>
<clear />
<add applicationName="WebUI4"
name="MongoDBProvider"
type="ASPNetProvidersForMongoDB.MongoDBRolesProvider, ASPNetProvidersForMongoDB"
connectionStringName="MongoProvidersDBConnStr"
writeExceptionsToEventLog="true"
mongoProviderDatabaseName ="aspnetproviderdb"
mongoProviderUsersCollectionName="Roles"
/>
</providers>
</roleManager>
<profile defaultProvider="MongoDBProvider" inherits="MyCompany.Security.Profile.ProfileCommon">
<providers>
<add
applicationName="WebUI4"
name="MongoDBProvider"
type="ASPNetProvidersForMongoDB.MongoDBProfileProvider, ASPNetProvidersForMongoDB"
connectionStringName="MongoProvidersDBConnStr"
writeExceptionsToEventLog="true"
mongoProviderDatabaseName ="aspnetproviderdb"
mongoProviderUsersCollectionName="Profiles" />
</providers>
</profile>
我希望这能有所帮助。可能的重复:你的意思是我可以通过继承MemberShipProvider并覆盖createuser来实现我自己的MemberShipProvider,就像你发送的链接中一样?是的,这就是为什么我指向smiliar问题的原因,所以你可以看到他们是如何解决的。