当我使用visual studio 2016(或任何可视化工作室)构建我的网站项目时,编译器给出了一个错误:
但是,如果我转到代码文件ResetPassword.aspx
,则edtEmployeeSurname
控件存在并且具有runat="server"
属性。
如果我打开ResetPassword.aspx.vb
代码文件,也没有给我错误。 (因此,在任何变量名称/控制ID'下都没有红线。
真正有趣的是网站(偶ResetPassword.aspx
)从浏览器正确加载而没有任何问题,我可以提交表单。
如果我注释掉ResetPassword.aspx.vb
中的所有代码,那么它只会发现另一个控件“#34;不存在"所以它继续进行很多页面。
我想知道的是:
如果这是一些开发人员常犯的错误,那么请帮我制定一个在谷歌中使用的搜索字符串,因为我的大部分搜索结果都是模糊不清或偏离主题。
答案 0 :(得分:1)
从屏幕截图中,它显示您的项目中有 50 错误。如果您尚未设置,则无法成功运行应用程序。
检查SO帖子:
Debugging runs even with compiler's errors in Visual Studio
注意:强>
如果您已经清理并重建了解决方案, 尝试在其他浏览器或其他计算机中运行应用程序,可能是您从以前的成功结果中显示了数据。
答案 1 :(得分:1)
我之前遇到过这种情况,我相信你看到的错误是红色的鲱鱼。他们让我相信你的一个较低的项目,你的用户控制被定义,或甚至可能低于它,它有一个可能无关的错误,导致它不是由visual studio构建,这反过来使视觉工作室认为您的用户控件尚未定义。
我通常做的是构建解决方案并观察输出窗口。它将单独构建所有项目,您在输出窗口中弹出的第一个错误是问题的根源。您看到的其他所有内容都是原始问题的症状。如果您修复了输出中显示的第一个错误,那么它将正确构建,或者您将不得不重复该过程并弹出下一个错误。
Visual Studio曾经按照它们在构建过程中出现的顺序对错误列表中的错误进行排序但是已经发生了变化,我个人非常喜欢旧的排序(我认为有一个设置可以用来回到原来的排序,但我无法想到这一点。)
答案 2 :(得分:0)
根据错误的措辞,我相信您可能会在ResetPassword.aspx
后面的代码之外引用其中一些控件。消息的后半部分显示由于其保护级别,它可能无法访问。默认情况下,您放置在表单上的控件的后备变量为Protected
,因此无法在外部看到该控件或其继承链的范围。