C# 如何将公共属性添加到要在web.config中配置的自定义SqlMembership提供程序
我正在创建一个自定义的SqlMembershipProvider类,我希望在该类上有一个新的公共属性,允许用户在web.config中设置其他公共属性,这些公共属性已经是SqlMembershipProvider基类的一部分。但是,当我添加属性并尝试运行应用程序时,会出现死亡错误的黄色屏幕,说明无法识别属性“DataLocationDescription”。我需要做什么才能在web.config中使用类的其他属性访问此属性 这是我的密码:C# 如何将公共属性添加到要在web.config中配置的自定义SqlMembership提供程序,c#,.net,configuration,web-config,C#,.net,Configuration,Web Config,我正在创建一个自定义的SqlMembershipProvider类,我希望在该类上有一个新的公共属性,允许用户在web.config中设置其他公共属性,这些公共属性已经是SqlMembershipProvider基类的一部分。但是,当我添加属性并尝试运行应用程序时,会出现死亡错误的黄色屏幕,说明无法识别属性“DataLocationDescription”。我需要做什么才能在web.config中使用类的其他属性访问此属性 这是我的密码: public class CustomSqlMember
public class CustomSqlMembershipProvider : SqlMembershipProvider
{
public string DataLocationDescription { get; set; }
}
下面是web.config文件,其中指定了我的属性DataLocationDescription:
<add name="CustomizedMembershipProvider"
type="ClassLibraries.Web.Security.CustomSqlMembershipProvider"
connectionStringName="SQLConnection"
maxInvalidPasswordAttempts="5"
passwordAttemptWindow="30" DataLocationDescription="Tier2"/>
非常感谢您的帮助
谢谢!
跳蚤对配置文件中的成员资格/提供者部分进行反序列化的不是
SqlMembershipProvider
,而是ConfigurationManager类。membership
元素的模式是,因此对此您无能为力
简单地说,配置系统不知道您的额外属性
相反,您可以在应用程序开始时的某个位置创建自定义成员资格提供程序并对其进行后期初始化。
因此,您现在将有一个类似于CustomSqlMembershipProvider
的部分,其中包含一个元素(或属性,由您选择),DataLocationDescription
值
[ConfigurationProperty("DataLocationDescription", IsRequired = true)]