当我尝试在浏览器中加载我正在处理的ASP.NET Web表单(.aspx页面)时,我收到以下运行时错误:
' /'中的服务器错误应用
编译错误
描述:编译服务此请求所需的资源时发生错误。请查看以下特定错误详细信息并相应地修改源代码。
编译器错误消息:CS1519:无效令牌'此'在课堂上,结构, 或接口成员声明
来源错误:
第447行:#line default
第448行:#line hidden
第449行:这个。@ __ PageInspector_EndRenderTracing(新的 对象[] {
第450行:@__ w});
第451行: 这个。@ __ PageInspector_BeginRenderTracing(新对象[] {
错误消息中引用的代码不会出现在我自己的任何代码中。
我的项目构建正常。
导致此错误的原因是什么?
答案 0 :(得分:8)
在我的情况下,此错误是由我的.aspx文件中服务器端代码块中的额外/不平衡关闭大括号("}"字符)引起的。
换句话说,可以通过创建一个空的ASP.NET Web表单,然后将以下内容插入到.aspx页面中来重现此错误:
<% } %>
我最近没有注意到,但是尽管项目构建正常,但Visual Studio也在&#34;错误列表中报告错误&#34;我的.aspx页面的窗口:Type or namespace definition, or end-of-file expected
追踪额外的&#34;}&#34;字符,删除它,并在浏览器中重新加载我的页面为我修复了问题。
答案 1 :(得分:0)
此问题的另一个原因是<%= %>
(&#34; code render inline expression block&#34;),其中只有评论。
在我的面向.NET 4.5的ASP.NET项目中,将以下内容插入到正在运行的.aspx页面的主体中会导致此错误:
<%= // My comment here %>