在ascx文件中使用if条件

Khi*_*yar 8 asp.net if-statement ascx

嗨,我想if condition在.ascx文件中使用.如下所示:

<%= if (value.equals("xyz")) {}  %>
Run Code Online (Sandbox Code Playgroud)

如上所示,如果我这样使用.然后我得到" invalid expression if"的错误.

请指导我.

Dar*_*rov 15

而不是<%=你应该使用<%(没有=标志):

<% if (value.equals("xyz")) { } %>
Run Code Online (Sandbox Code Playgroud)

<%= 当您想要将表达式的结果直接输出到HTML时使用.


dri*_*iis 5

这是因为表达式不会计算为可以包含在标记中的字符串,因此<%=无法使用表示法.你可以使用条件运算符:

<%= condition ? "value if true" : "value if false" %>
Run Code Online (Sandbox Code Playgroud)

或者您可以使用以下表示法插入代码块:

<% if (value.equals("xyz")) { } %>
Run Code Online (Sandbox Code Playgroud)

请注意,然后Response.Write您需要在花括号内输出任何所需的输出.这不是最佳实践 - 尽量避免使用标记中的逻辑.