结合“内联 IF” (C#) 带有response.write
在传统的 C# 代码块中:
"myInt = (<condition> ? <true value> : <false value>)"
但是在 .aspx 中使用如何,我想有条件地响应.write:
<% ( Discount > 0 ? Response.Write( "$" + Html.Encode(discountDto.Discount.FlatOff.ToString("#,###."): "")%>
mny thx
in a conventional C# code block:
"myInt = (<condition> ? <true value> : <false value>)"
but what about use inside an .aspx where I want to response.write conditionally:
<% ( Discount > 0 ? Response.Write( "$" + Html.Encode(discountDto.Discount.FlatOff.ToString("#,###."): "")%>
mny thx
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
值得了解不同标记标签在 ASP.NET 模板标记处理中的含义:
因此,要发出三元表达式(错误条件运算符)的值,您可以使用:
或者您可以编写 L
如果您使用数据绑定控件(如转发器) ,例如),您可以使用数据绑定格式来评估并发出结果:
<%# %> 的一个有趣的方面是标记扩展的特点是它可以在标签的属性内部使用,而其他两种形式(<% 和 <%=)只能在标签内容中使用(有一些特殊情况例外)。上面的例子证明了这一点。
It's worth understanding what the different markup tags mean within ASP.NET template markup processing:
So to emit the value of a ternary expression (err conditional operator) you can either use:
or you can writeL
If you were using databound control (like a repeater, for example), you could use the databinding format to evaluate and emit the result:
An interesting aspect of the <%# %> markup extension is that it can be used inside of attributes of a tag, whereas the other two forms (<% and <%=) can only be used in tag content (with a few special case exceptions). The example above demonstrates this.
将 Response.Write 放在整个 ?:-操作中:
Put Response.Write around the whole ?:-operation: