MembershipUser“GetUser()”是否调用WITH参数的重载?

时间:2012-01-10 16:30:14

标签: asp.net asp.net-membership membership-provider

所以我正在看一个带有一些示例代码的项目。

网站的母版页调用MembershipUser.GetUser(); - 将其强制转换为自定义类型。

在提供的CustomMembershipProvider.cs类中,原始程序员为GetUser(字符串用户名,bool userIsOnline)和GetUser(对象providerUserKey,bool userIsOnline)编写了覆盖函数。

但他们从来没有用零或默认的空参数为GetUser()写一个覆盖..... ???

所以你会假设,GetUser只带回了MembershipUser的属性,但它带回了用自定义覆盖写的数据 - 这怎么可能?

我唯一的解释是,MembershipUser.GetUser()默认功能,调用覆盖GetUser(用户名,userIsOnline)或GetUser(providerUserKey,userisOnline)。但这在任何地方都没有记录。

这是对的吗?因为在示例代码中没有位置可以找到此GetUser()覆盖,并且被覆盖的GetUser()没有默认参数。

1 个答案:

答案 0 :(得分:1)

是的。

来自反射器

public static MembershipUser GetUser()
{
    return GetUser(GetCurrentUserName(), true);
}