I am trying to implement the Membership provider in ASP.Net and not having an easy time going about this. There are several tutorials I have followed in detail however I must be missing something.
Both of the Following Tutorials are to my understanding using the same technique in modifying the Machine.Config file to get ASP.net's Dev Server Config Tool to be able to see the MySql Connector.
Heres my checklist
1.) I am programming in asp/Vb.Net VS2005
2.) I uninstalled my latest copy of DotNet Connector and installed the 126.96.36.199 as requested in the tutorial.
3.) I have copied the requested DLL's(Mysql.web.dll and mysql.data.dll) into a Bin folder within my webapps directory.
4.) I have added a Connection string in my Web.Config File as follows
***See Code Section (Web.Config)
5.) I have changed the authentication mode to "Forms"
6.) I have modified my Machine.config
***See Code Section (Machine.Config)
The Problem i am getting is when I open the 'Asp.net Configuration Tool' and click on the 'Security' tab I get the following error. ***"There is a problem with your selected data store. This can be caused by an invalid server name or credentials, or by insufficient permission. It can also be caused by the role manager feature not being enabled. Click the button below to be redirected to a page where you can choose a new data store. The following message may help in diagnosing the problem. Unable to initialize provider. Missing or incorrect schema.
I am unsure where to go from here. I am quite new to ASP.net although i've been a console programmer for a number of years. I have never used the membership provider and wanted to learn about it, however at my company we exclusively use MySQL.
Any suggestions or help will be greatly appreciated it. I've spent the last week trying to get this implemented and I'm about ready to give up and just do roles management without using these nice controls provided out of the box by Visual Studio.
<add name="LocalMySqlServer" connectionString="Server=MyIP; Database=POSUtil; Uid=root; Pwd=MyPW;" providerName="MySql.Data.SqlClient" />
<processModel autoConfig="true" />
<add name="MySQLMembershipProvider" autogenerateschema="true" type="MySql.Web.Security.MySQLMembershipProvider, MySql.Web, Version=188.8.131.52, Culture=neutral, PublicKeyToken=c5687fc88969c44d" connectionStringName="LocalMySqlServer" enablePasswordRetrieval="false" enablePasswordReset="true" requiresQuestionAndAnswer="true" applicationName="/" requiresUniqueEmail="false" passwordFormat="Clear" maxInvalidPasswordAttempts="5" minRequiredPasswordLength="7" minRequiredNonalphanumericCharacters="1" passwordAttemptWindow="10" passwordStrengthRegularExpression="" />
<add name="MySQLProfileProvider" type="MySql.Web.Profile.MySQLProfileProvider, MySql.Web, Version=184.108.40.206, Culture=neutral, PublicKeyToken=c5687fc88969c44d" connectionStringName="LocalMySqlServer" applicationName="/" />
<roleManager defaultProvider="MySqlRoleProvider" enabled="true" cacheRolesInCookie="true" cookieName=".ASPROLES" cookieTimeout="30" cookiePath="/" cookieRequireSSL="false" cookieSlidingExpiration="true" cookieProtection="All" >
<add name="MySQLRoleProvider" type="MySql.Web.Security.MySQLRoleProvider,MySql.Web, Version=220.127.116.11, Culture=neutral,PublicKeyToken=c5687fc88969c44d" connectionStringName="LocalMySqlServer" applicationName="/" writeExceptionsToEventLog="false" />