【问题标题】:<% %> <--What is this called? How do I write C# code in it<% %> <--这叫什么?如何在其中编写 C# 代码
【发布时间】:2012-05-23 22:18:31
【问题描述】:

我正在使用 asp.net mvc,并且我有一个有价值的表。当客户支付的价值 = 0。我希望它在单元格中显示没有付款。客户付款时 = 1。我希望它显示。待办的。当它 = 2 时,我希望它显示付费。

我正在尝试编写一个内联代码块,以根据我的Customer 类上的Paid 属性的值显示付款状态。如果值为“0”,我需要显示一个空单元格。如果值为“1”,我需要在单元格中打印“Pending”,如果值为“2”,我需要打印“Paid”。

我已经有了以下内容,但我不确定如何将值放入单元格中。

<%foreach (var Customer in CustomerList)  {%>
  <tr>
    <td><input type="radio" value="<%= Customer.ThirdPartyCustomerId %>" /></td>
    <td><%=Customer.FirstName%></td>
    <td><%= if(Customer.Paid==0)
            {
                Customer.Paid== "No Payment";
            };%>
    </td>        
 </tr>
<%}%>

【问题讨论】:

  • 这些字符定义了一个内联代码块
  • 我对这个问题做了很大的修改,希望它是一个改进并坚持原来的。这是为了对抗越来越多的票数越来越高,因为人们认为它“不是一个真正的问题”。
  • 您应该将此作为一个新问题发布,因为上下文已经发生了很大变化。

标签: c# html asp.net-mvc


【解决方案1】:

它们被称为代码分隔符。

&lt;%=Customer.FirstName%&gt; 输出一个值

<%= if(Customer.Paid==0)
            {
                Customer.Paid== "No Payment";
};%>

以上,您没有输出值,因此不需要= 符号。

【讨论】:

  • 末尾需要分号吗?
  • @user1392576:你看我下面的回答了吗?
【解决方案2】:

我不是 ASPX 专家,但这不可行吗?

<td>
    <% if(Customer.Paid==0) { %>No payment<% } %>
    <% else if(Customer.Paid==1) { %>Pending<% } %>
    <% else { %>Paid<% } %>
</td>

或者,如果你想要它在一行中

<td>
    <%= Customer.Paid == 0 ? "No payment" : (Customer.Paid == 1 ? "Pending" : "Payed") %>
</td>

【讨论】:

    猜你喜欢
    • 2011-05-18
    • 2017-06-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-10-19
    • 2010-09-23
    • 2020-06-02
    • 1970-01-01
    相关资源
    最近更新 更多