3

我得到了一个用 aspx/c# 编写的 webproject。当我将它加载到 Visual Studio 2010 中时,我收到很多错误,告诉我代码隐藏文件中的某些控件在当前上下文中不存在。

我检查了常见的陷阱,例如错误的代码隐藏文件名、缺少runat-attribute、重新启动 VS、重新加载项目,但没有任何方法可以解决错误。

我还能做些什么来检查问题出在哪里?

4

5 回答 5

5

尝试将代码隐藏更改为 CodeFile="where code locate",然后它可能会起作用。

于 2012-10-18T10:07:06.887 回答
2

标记文件的继承类和文件后面的代码应该匹配,并确保这些控件不是第三方并且可能需要引用它们的 dll 或其他东西。如果这些控件是用户控件(ascx)控件,请确保它们使用在顶部的寄存器行中正确标记名。

于 2012-10-18T09:19:03.937 回答
1

感谢@03Usr,以下链接带来了答案:

ASP.NET 控件无法在 Visual Studio 2008 的代码隐藏中引用

删除所有设计器文件并将项目转换为 Web 应用程序会带回设计器文件,从而有效地使控件再次可引用。

于 2012-10-22T14:05:58.147 回答
1

这是一个非常烦人的hack,但是如果您从aspx页面中删除控件然后保存页面,然后将控件粘贴回页面并再次保存后面的代码,那么似乎可以识别控件。每当我更改像 ID 这样的属性时,我都会遇到这个问题。

于 2016-06-02T18:14:43.697 回答
1

在我的例子中,aspx 文件位于名为 XYZ 的文件夹中,类名是 ABC。所以 ASP 将 C# 文件的类名命名为 XYZ_ABC 将文件重命名为 ABC 后,错误已修复

希望能帮助到你!

于 2020-01-16T05:05:39.923 回答