我整个早上都在戳这个,我似乎找不到这样做的方法。
我有一个 Web 应用程序,它必须在它的一个 div-s 上显示一个工具提示。工具提示的内容来自一些数据库查询
< div style="height: 10px; clear: both;" title="<%=dbCount %> 本组中版本为 <%=devVersion %> 的设备">
这工作正常。
如果我尝试用<%=dbCount %>
表达式替换:
< div style="height: 10px; clear: both;" title="<%=dbCount > 0 ? ""+dbCount : "No " %> device(s) with version <%=devVersion %> in this group">
然后在 PageLoad 我得到一个异常 CS1518: Expected class, delegate, enum。
无论我如何构造表达式,是否放置括号,是否使用 String.Format 或三元表达式 - 除了仅使用变量名之外,任何类型的表达式都会导致错误。
我尝试用 <%# 替换 <%= 并尝试 <% Response.Write(dbCount>0 ? "some" : "none") %> 并得到相同的错误。这是我正在编辑的 aspx 中唯一的一行,因此错误是由它引起的,而不是页面上的其他地方。
我可以使用 <% if(...){ 构造,但是设计师在找到关闭的 div 时遇到了麻烦,我不想用太多垃圾污染源,我宁愿保留原始版本。
您知道为什么会出现编译器错误吗?如何防止它并使用输出表达式 <%= devCount>0?"some":"none" %>?