我正在尝试将 MySQLRoleProvider(MySql.Web, Version=6.2.2.0) 与 Visual Web Developer 2008 一起使用。
尝试添加角色时出现异常“表‘test.my_aspnet_applications’不存在”
if (!Roles.RoleExists("TestRole"))
{
Roles.CreateRole("TestRole");
}
谁能告诉我哪里出错了。或者告诉我如何生成/找到正确的数据库脚本来创建角色、成员资格、配置文件... MySql 表。
<membership defaultProvider="MySQLMembershipProvider">
<providers>
<remove name="MySQLMembershipProvider"/>
<add autogenerateschema="true" connectionStringName="LocalMySqlServer" enablePasswordRetrieval="false" enablePasswordReset="true" requiresQuestionAndAnswer="true" applicationName="/" requiresUniqueEmail="false" passwordFormat="Clear" maxInvalidPasswordAttempts="5" minRequiredPasswordLength="7" minRequiredNonalphanumericCharacters="1" passwordAttemptWindow="10" passwordStrengthRegularExpression="" name="MySQLMembershipProvider" type="MySql.Web.Security.MySQLMembershipProvider, MySql.Web, Version=6.2.2.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d"/>
</providers>
</membership>
<profile enabled="true" defaultProvider="MySQLProfileProvider">
<providers>
<remove name="MySQLProfileProvider"/>
<add name="MySQLProfileProvider" autogenerateschema="true" type="MySql.Web.Profile.MySQLProfileProvider, MySql.Web, Version=6.2.2.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d" connectionStringName="LocalMySqlServer" applicationName="/"/>
</providers>
</profile>
<roleManager enabled="true" defaultProvider="MySQLRoleProvider">
<providers>
<remove name="MySQLRoleProvider"/>
<add autogenerateschema="true" connectionStringName="LocalMySqlServer" applicationName="/" name="MySQLRoleProvider" type="MySql.Web.Security.MySQLRoleProvider, MySql.Web, Version=6.2.2.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d"/>
</providers>
</roleManager>
最佳答案
您是否使用 ASP.Net 配置工具将应用程序的提供程序切换为 MySQL 提供程序?我相信这是触发 MySQL 提供程序自动生成模式的原因。
关于c# - 使用 MySql MySQLMembershipProvider - autogenerateschema ="true"不工作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2242644/