2013-04-10 33 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