2011-03-10 78 views
0

我刚刚下载并安装了最新的MySQL .net连接器6.3.6,它连接到数据库就好了。我的问题是我为它设置的web.config设置。看起来MinRequiredNonAlphanumericCharacters属性被硬编码为'1'。MySql .net连接器成员资格提供者默认MinRequiredNonAlphanumericCharacters

我已将此更改为0,5或任何其他数字。我甚至设置了一个网页来显示提供者的属性。如果我更改web.config中的值,则值会更新。看来MinRequiredNonAlphanumericCharacters不会改变。

<membership defaultProvider="MySqlMembershipProvider"> 
    <providers> 
     <clear/> 
     <add name="MySqlMembershipProvider" autogenerateschema="true" connectionStringName="LocalMySqlServer" 
     type="MySql.Web.Security.MySQLMembershipProvider, MySql.Web, Version=6.3.6.0, Culture=neutral, PublicKeyToken=C5687FC88969C44D" 
     applicationName="MySite" 
     maxInvalidPasswordAttempts="3" 
     enablePasswordReset="true" 
     enablePasswordRetrieval="false" 
     requiresQuestionAndAnswer="true" 
     requiresUniqueEmail="true" 
     passwordFormat="Hashed" 
     passwordAttemptWindow="10" 
     minRequiredNonAlphanumericCharacters="0" 
     minRequiredPasswordLength="44"/> 
    </providers> 
</membership> 

再次,数据库连接工作得很好,因为我没有发布连接字符串。 44分钟的密码长度仅用于测试。

protected void Page_Load(object sender, EventArgs e) 
{ 
    MembershipProvider p = Membership.Provider; 

    Literal1.Text = "Min Pass length: " + p.MinRequiredPasswordLength.ToString() + 
     "<br/> Required non-alpha: " + p.MinRequiredNonAlphanumericCharacters.ToString() + 
     "<br/>App Name: " + p.ApplicationName; 
} 

三个我只测试,只有MinRequiredNonAlphanumericCharacters中保持在“1”不管我在web.config将其更改为。我甚至将它改为'abcd'并且没有收到.NET运行时错误。我认为它是硬编码的地方,或者我没有在web.config中使用正确的属性名称。我直接从例如MySQL.net连接器附带的文档中复制了web.config的值。

任何帮助将不胜感激。

回答

2

找到了我在www.asp.net的帖子的答案。我的web.config文件中minRequiredNonAlphanumericCharacters的属性是错误的。需要minRequiredNonalphanumericCharacters(小'a')。

相关问题