2010-10-05 53 views
2

我有MySqlMembershipProvider与Asp.Net MVC一起使用。我的问题是我怎样才能配置表前缀...所以而不是'我的_aspnet_'前缀在表上,我希望这是没有或由我定义。MySqlMembershipProvider的表前缀

我的web.config:

<?xml version="1.0"?> 

<add name="ApplicationServices" connectionString="server=localhost;user id=root;Password=*********;database=sparkSources" providerName="MySql.Data.MySqlClient"/> 

<authentication mode="Forms"> 
    <forms loginUrl="~/Account/LogOn" timeout="2880" /> 
</authentication> 

<membership defaultProvider="MySqlMembershipProvider"> 
    <providers> 
    <clear/> 
    <add name="MySqlMembershipProvider" 
     type="MySql.Web.Security.MySQLMembershipProvider, 
      MySql.Web, Version=6.3.4.0, Culture=neutral, 
      PublicKeyToken=c5687fc88969c44d" 
     autogenerateschema="true" 
     tablePrefix="ss" 
     connectionStringName="ApplicationServices" 
     enablePasswordRetrieval="false" 
     enablePasswordReset="true" 
     requiresQuestionAndAnswer="false" 
     requiresUniqueEmail="false" 
     passwordFormat="Hashed" 
     maxInvalidPasswordAttempts="5" 
     minRequiredPasswordLength="6" 
     minRequiredNonalphanumericCharacters="0" 
     passwordAttemptWindow="10" 
     passwordStrengthRegularExpression="" 
     applicationName="sparkSources" 
/> 
    </providers> 
</membership> 

<profile> 
    <providers> 
    <clear/> 
    <add name="AspNetSqlProfileProvider" type="System.Web.Profile.SqlProfileProvider" connectionStringName="ApplicationServices" applicationName="/" /> 
    </providers> 
</profile> 

<roleManager enabled="false"> 
    <providers> 
    <clear/> 
    <add name="AspNetSqlRoleProvider" type="System.Web.Security.SqlRoleProvider" connectionStringName="ApplicationServices" applicationName="/" /> 
    <add name="AspNetWindowsTokenRoleProvider" type="System.Web.Security.WindowsTokenRoleProvider" applicationName="/" /> 
    </providers> 
</roleManager> 

<pages> 
    <namespaces> 
    <add namespace="System.Web.Mvc" /> 
    <add namespace="System.Web.Mvc.Ajax" /> 
    <add namespace="System.Web.Mvc.Html" /> 
    <add namespace="System.Web.Routing" /> 
    </namespaces> 
</pages> 

回答

2

我想我会看看源令我惊讶的是,自版本6.3.4开始,“my_aspnet”表前缀是硬编码的。更改了所有“my_aspnet”前缀并重新编译连接器 - 所以如果你真的想改变表前缀 - 准备好一些源代码潜水。