我爲此做了一個快速搜索,並沒有提出任何問題。在MVC Views中,「以下行可以解決ASP.NET編譯器警告」問題?
不
<%-- The following line works around an ASP.NET compiler warning --%>
<%: ""%>
看起來像一個黑客攻擊的一位? 這是什麼意思,MS Dev Team是否正在努力尋求解決方案?
我爲此做了一個快速搜索,並沒有提出任何問題。在MVC Views中,「以下行可以解決ASP.NET編譯器警告」問題?
不
<%-- The following line works around an ASP.NET compiler warning --%>
<%: ""%>
看起來像一個黑客攻擊的一位? 這是什麼意思,MS Dev Team是否正在努力尋求解決方案?
在ASP.NET論壇中有關於此的文章。沒有這一行,你可能會得到類似「__o未聲明」的編譯器警告。這項工作可以防止這些人出現。
從asp.net論壇...
我們終於獲得可靠 攝製,並確定了基本 問題。甲瑣碎REPRO看起來像 這樣:
<% if (true) { %> <%=1%> <% } %> <%=2%>
爲了在<%在 設計時提供智能感知=%>塊,ASP.NET生成到一個臨時__o可變 和語言 分配(VB或C# )然後爲變量提供智能感知 。 這是在頁面編譯器看到 第一個<%= ...%>塊時完成的。但在這裏, 塊在if裏面,所以在 if關閉後,變量出 的範圍。我們最終產生 是這樣的:
if (true) { object @__o; @__o = 1; } @__o = 2;
的解決方法是在頁面添加早期的虛擬 表達。例如。 <%=「」%>。這將不會渲染 任何東西,並且它將確保 __o在任何潛在的 'if'(或其他範圍)聲明之前被聲明爲Render方法中的頂層。
我不知道答案,但該行只出現在基於VB.NET的項目中...... – 2010-06-25 01:37:03