C# ASP中继器中的条件
我正在尝试将一个条件放入我的ASP repeater标记中。我正在创建一个表,其中一个td项是链接。问题是我需要在检查repeater容器中某个变量的值时创建一个链接。这是我的密码:C# ASP中继器中的条件,c#,asp.net,C#,Asp.net,我正在尝试将一个条件放入我的ASP repeater标记中。我正在创建一个表,其中一个td项是链接。问题是我需要在检查repeater容器中某个变量的值时创建一个链接。这是我的密码: <td><%#((VWApp.Code.TrackDM)Container.DataItem).CdNo%></td> <td><%#((VWApp.Code.TrackDM)Container.DataItem).ShippingNo%></td&
<td><%#((VWApp.Code.TrackDM)Container.DataItem).CdNo%></td>
<td><%#((VWApp.Code.TrackDM)Container.DataItem).ShippingNo%></td>
但我在尝试这样做时出错了。有人能告诉我做这件事的正确方法吗
非常感谢您的任何想法和建议。在您的
中使用
,并将其Visible
属性绑定到一个表达式,该表达式将检查ShippingNo,如果它表示有效链接,则返回true。在
中使用
,并将其Visible
属性绑定到一个表达式,该表达式将检查ShippingNo,如果它表示有效链接,则返回true。您始终可以走老式的路线,即根本不使用中继器,而是使用内联代码,您可以使用任何需要的代码。比如:
<% foreach (SomeObject obj in MyObjectCollection) { %>
<td>
<% if (obj.SomeProperty == something) { %>
<a href="<%= /* build link */ %>">Click Me</a>
<% } else { %>
Some Text
<% } %>
</td>
<% } %>
一些文本
这是ASP做事情的经典方式,但我发现它在某些情况下更有效。有时候,使用真正的代码比在中继器或GridView的范围内工作更容易。你可以一直走老式的路线,根本不使用中继器,而是使用内联代码,在那里你可以使用你需要的任何代码。比如:
<% foreach (SomeObject obj in MyObjectCollection) { %>
<td>
<% if (obj.SomeProperty == something) { %>
<a href="<%= /* build link */ %>">Click Me</a>
<% } else { %>
Some Text
<% } %>
</td>
<% } %>
一些文本
这是ASP做事情的经典方式,但我发现它在某些情况下更有效。有时,使用真实代码比在中继器或GridView的边界内工作更容易。将您的逻辑封装在一个文件中,并向其传递做出显示决策所需的参数:
<uc:linkdisplay id="linkdisplay1" runat="server"
CdNo='<%#((VWApp.Code.TrackDM)Container.DataItem).CdNo %>'
ShippingNo='<%#((VWApp.Code.TrackDM)Container.DataItem).ShippingNo%>' />
将逻辑封装在a中,并向其传递做出显示决策所需的参数:
<uc:linkdisplay id="linkdisplay1" runat="server"
CdNo='<%#((VWApp.Code.TrackDM)Container.DataItem).CdNo %>'
ShippingNo='<%#((VWApp.Code.TrackDM)Container.DataItem).ShippingNo%>' />
但是如果没有链接,我将如何显示shippingNo?有些情况下,我们不需要显示链接,但必须显示编号。当您同时需要一个
和一个
,每个都带有根据ShippingNo的值设置的可见的属性。但是,如果没有链接,我将如何显示ShippingNo?在某些情况下,我们不需要显示链接,但必须显示编号。当您需要一个
和一个
时,每个都具有根据ShippingNo的值设置的可见
属性。而且它可能会在CPU方面表现更好。当然,随着代码的增长,它可能会很快变得一团糟。我也同意这可能会一团糟,但没有什么比编写一个大GridView更让我恼火的了,它包含了大量具有字符串格式的奇特绑定控件、备用行设置以及其他特定于控件的内容,然后发现一个无法解决的小问题,但如果不是这样,内联代码就很容易了。(好吧,很多事情比这更让我恼火,但这以前发生过,处理起来很痛苦)。而且它可能会表现得更好,CPU方面的。当然,随着代码的增长,它可能会很快变得一团糟。我也同意这可能会一团糟,但没有什么比编写一个大GridView更让我恼火的了,它包含了大量具有字符串格式的奇特绑定控件、备用行设置以及其他特定于控件的内容,然后发现一个无法解决的小问题,但如果不是这样,内联代码就很容易了。(好吧,很多事情比这更让我恼火,但这以前发生过,处理起来很痛苦)。