2013-04-10 37 views
0

從另一個擴展方法調用擴展方法時,我的解決方案構建正常,但在已發佈的站點(或虛擬asp.net服務器)中,我獲得了編譯錯誤「不明確的呼叫」。在asp.net中使用擴展方法的模糊呼叫(已解決)

public static string ExtensionMethodA(this ObjectToExtend myObj){//code here} 

public static string ExtensionMethodB(this ObjectToExtend myObj){ 
    string a = myObj.ExtensionMethodA(); // this line causes the error. 
    return a; 
} 

回答

0

我還沒有看到足夠確切地知道爲什麼,但這裏是解決方案:

public static string ExtensionMethodA(this ObjectToExtend myObj){//code here} 

public static string ExtensionMethodB(this ObjectToExtend myObj){ 
    string a = ExtensionMethodA(myObj); // correct call. 
    return a; 
} 
+0

更好的事情本來編輯您的問題,並問爲什麼這種行爲是這樣的。從你的問答看起來你明確地調用了一個方法而不是另一個方法,那麼爲什麼傳遞這個對象會有所作爲? – Pete 2013-04-11 00:04:06