将VS2003下的一个Web项目升级到VS2005后,去除明显错误后编译测试运行。某页面发现一个问题:
“/”应用程序中的服务器错误。
分析器错误
说明: 在分析向此请求提供服务所需资源时出错。请检查下列特定分析错误详细信息并适当地修改源文件。
分析器错误信息: 发现不明确的匹配。
这个问题发生原因一般情况是:
aspx页面里面的控件有与您的aspx.cs里的类变量重名(不区分大小写)的ID
那么我发现在代码中有如下的声明:
protected System.Web.UI.WebControls.Label BlogID;
protected System.Web.UI.WebControls.Label blogID;
blogID在前台控件中不存在,仅在cs代码中声明了,因此产生了上述的问题。
由此看来虽然,C#等语言中允许我们使用大小写不同来声明不同的变量,但是我们应该尽量避免这样的情况,使用完全不同的名字区分不同的变量为好啊。