如何阅读.NET reflector---用于MemberShipProvider
我正在实现MembershipProvider。因此,我想参考Microsoft在.NET reflector中对sqlMemberShipProvider的实现,并找到一件有趣的事情: 对于RequiresQuestionAndAnswer,它直接检索_RequiresQuestionAndAnswer的值如何阅读.NET reflector---用于MemberShipProvider,.net,asp.net-membership,reflector,.net,Asp.net Membership,Reflector,我正在实现MembershipProvider。因此,我想参考Microsoft在.NET reflector中对sqlMemberShipProvider的实现,并找到一件有趣的事情: 对于RequiresQuestionAndAnswer,它直接检索_RequiresQuestionAndAnswer的值 public override bool RequiresQuestionAndAnswer { get { return this._RequiresQu
public override bool RequiresQuestionAndAnswer
{
get
{
return this._RequiresQuestionAndAnswer;
}
}
但是RequiresQuestions和Answer在哪里得到值呢?我想从web.config中一定有一些逻辑检索值,对吗?但是我找不到。为什么?代码在哪里?查看
初始化方法。以下是字段的初始化方式:
this._RequiresUniqueEmail = SecUtility.GetBooleanValue(config, "requiresUniqueEmail", true);
因此,是的,它是从配置文件中读取的。当成员资格提供程序初始化时,它是从web.config中读取的。它默认为TRUE在reflector中,选择它自己的类。然后滚动到底部并单击Expend Methods
现在,您可以搜索此成员并检查其使用者。从6.6版开始:
单击getter正文中的backing\u RequiresQuestionAndAnswer
字段。这将带您进入字段声明,并在浏览器面板上高亮显示该字段
在浏览器面板上的字段上单击鼠标右键,然后在关联菜单上选择“分析”
从analyzer树中打开由节点分配的。请注意,分配给字段的唯一方法是publicInitialize
方法
右键单击方法并在关联菜单上选择“转到成员”。您将看到,此方法使用适当的参数将字段分配给调用SecUtility.GetBooleanValue
的值
有关更多信息,请单击方法调用来研究此方法的实现