发现不明确的匹配的解决方案
衣明志 发表于 , 阅读 (17032)

将VS2003下的一个Web项目升级到VS2005后,去除明显错误后编译测试运行。某页面发现一个问题:

分析器错误

* *分析器错误 **
说明: 在分析向此请求提供服务所需资源时出错。请检查下列特定分析错误详细信息并适当地修改源文件。
分析器错误信息: 发现不明确的匹配。

这个问题发生原因一般情况是:

aspx页面里面的控件有与您的aspx.cs里的类变量重名(不区分大小写)的ID

那么我发现在代码中有如下的声明:

protected System.Web.UI.WebControls.Label BlogID;
protected System.Web.UI.WebControls.Label blogID; 

blogID在前台控件中不存在,仅在cs代码中声明了,因此产生了上述的问题。

由此看来虽然,C#等语言中允许我们使用大小写不同来声明不同的变量,但是我们应该尽量避免这样的情况,使用完全不同的名字区分不同的变量为好啊。