2012-01-10 50 views
0

所以我在看一個帶有一些示例代碼的項目。MembershipUser「GetUser()」調用重載WITH參數嗎?

而網站的母版頁調用MembershipUser.GetUser(); - 將其轉換爲自定義類型。

在提供的CustomMembershipProvider.cs類中,原始程序員爲GetUser(字符串用戶名,bool userIsOnline)和GetUser(對象providerUserKey,bool userIsOnline)編寫了重寫函數。

但他們從來沒有寫過一個覆蓋GetUser()零或默認空參數..... ???

所以你會假設,GetUser只會帶回MembershipUser的屬性,但它會帶回寫入自定義覆蓋的數據---這怎麼可能?

我唯一的解釋是MembershipUser.GetUser()默認功能,調用覆蓋GetUser(username,userIsOnline)或GetUser(providerUserKey,userisOnline)。但這在任何地方都沒有記錄。

這是正確的嗎?因爲示例代碼中沒有可以找到此GetUser()覆蓋的位置,並且被覆蓋的GetUser()沒有缺省參數。

回答

1

是的。

從反光

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

- 尼斯找到,我不知道在哪裏可以找到這些東西。另外,它從哪裏獲得當前用戶名?我只給它當前的用戶ID。 – Dexter 2012-01-10 17:03:25

+0

下載反射器http://www.reflector.net/,它的一個必須有工具 – 2012-01-11 13:26:33