1

我第一次尝试在 MySQL .NET 连接器 6.2.3 中使用内置成员资格/角色和配置文件提供程序,并且在我的 web.config 中使用自动生成架构属性。但是,我遇到了一些奇怪的问题。当我在本地运行网站时,我在本地数据库中创建角色、用户等没有问题,但是当我将它部署到我的 Web 服务器上时,生成的表看起来与本地不同,并且并非所有表都包含相同的列或使用相同的命名。例如,角色表在本地命名为“my_aspnet_roles”,但在服务器上命名为“my_aspnet_Roles”,包含角色名称的列在本地命名为“name”,但在服务器上命名为“Rolename”,这意味着没有提供者在线工作?有什么我想念的吗?

这是我的配置文件,其中包含提供程序的所有设置:

<connectionStrings>
    <add name="LocalMySqlServer" connectionString="server=127.0.0.1;database=user_test;user id=root;pwd=1234"/>
</connectionStrings>
<membership defaultProvider="MySQLMembershipProvider">
        <providers>
            <remove name="MySQLMembershipProvider"/>
            <add name="MySQLMembershipProvider" autogenerateschema="true" connectionStringName="LocalMySqlServer" applicationName="my_app" passwordFormat="Hashed" type="MySql.Web.Security.MySQLMembershipProvider, MySql.Web, Version=6.2.3.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d"/>
        </providers>
    </membership>
    <profile enabled="true" defaultProvider="MySQLProfileProvider">
        <providers>
            <remove name="MySQLProfileProvider"/>
            <add name="MySQLProfileProvider" autogenerateschema="true" connectionStringName="LocalMySqlServer" applicationName="my_app" type="MySql.Web.Profile.MySQLProfileProvider, MySql.Web, Version=6.2.3.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d" />
        </providers>
    </profile>
    <roleManager enabled="true" defaultProvider="MySQLRoleProvider">
        <providers>
            <remove name="MySQLRoleProvider"/>
            <add name="MySQLRoleProvider" autogenerateschema="true" connectionStringName="LocalMySqlServer" applicationName="my_app" type="MySql.Web.Security.MySQLRoleProvider, MySql.Web, Version=6.2.3.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d"/>
        </providers>
    </roleManager>
4

1 回答 1

0

尝试最新的 MySQL .NET 连接器,版本。6.3.6

于 2011-03-13T16:13:14.080 回答