[英]set minRequiredPasswordLength in custom membership with web.config
我在項目中有CustomMembership類,並在類中使用此代碼:
private static int _MinRequiredPasswordLength;
public static int MinRequiredPasswordLength
{
set { _MinRequiredPasswordLength = value; }
get { return _MinRequiredPasswordLength; }
}
並在web.config中設置成員資格
<membership defaultProvider="CustomMembership">
<providers>
<clear />
<add name="CustomMembership" type="Project1.Code.CustomMembership, Project1, Version=1.0.0.0, Culture=neutral" connectionStringName="PConn" enablePasswordRetrieval="false" enablePasswordReset="true" requiresQuestionAndAnswer="false" requiresUniqueEmail="false" maxInvalidPasswordAttempts="5" minRequiredPasswordLength="6" minRequiredNonalphanumericCharacters="0" passwordAttemptWindow="10" applicationName="/" />
</providers>
</membership>
並使用此代碼獲取minRequiredPasswordLength:
MinRequiredPasswordLength.Text = CMembership.MinRequiredPasswordLength.ToString();
但是得到“ 0”! 我想得到“ 6”。
如果從抽象的MembershipProvider
類派生,則應重寫MembershipProvider.Initialize
。 config
集合將包含所有配置屬性,您可以使用它們來設置屬性,包括MinRequiredPasswordLength
:
private int _minRequiredPasswordLength;
public override void Initialize(string name, NameValueCollection config)
{
_minRequiredPasswordLength = // get it from config["minRequiredPasswordLength"], with validation and conversion to int.
}
public override MinRequiredPasswordLength
{
get { return _minRequiredPasswordLength; }
}
如果您是從現有提供程序(例如SqlMembershipProvider
派生的,則可以簡單地使用MinRequiredPasswordLength
的基類實現。
嘗試:
MinRequiredPasswordLength.Text = @CustomMembership.MinRequiredPasswordLength
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.