aspx页面中的三元运算符

时间:2015-03-18 10:47:04

标签: c# asp.net ternary-operator

大家好我想在aspx页面中使用三元运算符。我在我的aspx.cs文件中有两个公共变量,如下所示

public string currency = "INR";
public decimal amount = 100;

我想基于我的货币构建html标签,目前我正在这样做

<% if (currency != "INR")
  {%>
     <span>$<%=amount%></span>
  <%}
  else
  { %>
    <span<%=amount%></span>
  <%} %>

我想这样做一行

<span><% if (currency != "INR") %> $ amout <% : %> </span>

但我收到的错误为Invalid expression term ':',如果有可能,有人会帮助我

3 个答案:

答案 0 :(得分:2)

Tenary运营商在没有if的情况下工作。它看起来如下:

booleanExpression ? trueValue : falseValue

但是你不能像PHP一样对待ASP.NET,所以你必须将它放在一个<% %>包装器中

<span><%= (currency != "INR" ? "$" : "") + amount %></span>

答案 1 :(得分:1)

从表达式

中删除if

您需要在以下后再提供一个值:

<span><%= (currency != "INR" ? "" : "Rs.") + amount %></span>

答案 2 :(得分:1)

bytecode77的代码看起来很尴尬。我建议:

<span><%= (currency != "INR") ? amount : " " %></span>