目标:我在数据库中有两个不同的列。根据它是哪个客户端,我要么要显示一个列中的值,要么要显示该列中的另一列(位于与LayoutTemplate相关联的ItemTemplate中)。
研究:我尝试查找有关SO的类似文章,但它们涉及的问题略有不同,其中包括:ASP.Net: Conditional Logic in a ListView's ItemTemplate
错误:我尝试在aspx中使用if语句,但它告诉我我丢失了;即使我拥有它:
default.aspx :
<td><%# if(isAAA()) { Item.} else { Item.}; %></td>
我也尝试过:
<td><%# if(isAAA()) { Item.; } else { Item.; } %></td>
我也尝试过:
<td><% if(isAAA()) { Item.; } else { Item.; } %></td>
我也尝试过:
<td><% if(isAAA()) { #Item.; } else { #Item.; } %></td>
我也尝试了以下操作,但是它将值放在错误的列下,并且在页面上显示了部分aspx逻辑:
if(isAAA() { <td><%# Item.%></td> else { <td><%# Item.%></td> }
注意:isAAA()是.cs文件中的一种方法,用于检查“设置”文件中的值。
答案 0 :(得分:0)
尝试一下:
<td><%= this.isAAA() ? Item.AAA_Group_ID.ToString() : Item.Group_ID.ToString() %></td>
答案 1 :(得分:0)
我通过以下设置解决了该问题:
<% if (is()) %>
<% { %>
<td><%# Item. %></td>
<% } %>
<% else %>
<% { %>
<td><%# Item. %></td>
<% } %>
这是我找到的最接近的SO:ASP.NET Conditional Markup Rendering According to Web.config Key