自动生成的mysql成员资格/配置文件和角色提供程序表出错

时间:2011-03-13 14:09:56

标签: .net asp.net mysql asp.net-membership mysql-connector

我第一次尝试在MySQL .NET Connector 6.2.3中使用构建成员/角色和配置文件提供程序,并且我在web.config中使用了auto generate schema属性。但是,我遇到了一些奇怪的问题。当我在本地运行网站时,我在本地数据库中创建角色,用户等没有问题,但是当我在我的Web服务器上部署它时,生成的表看起来与本地不同,并且并非所有表都包含相同的列或使用相同的命名。例如。角色表在服务器上命名为“my_aspnet_roles”local,但是“my_aspnet_Roles”,包含角色名称的列在服务器上命名为“name”local但命名为“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>

1 个答案:

答案 0 :(得分:0)