内联如果然后语句.ASP.NET

Inline If Then Statement. ASP.NET

本文关键字:ASP NET 语句 然后 如果      更新时间:2023-09-26

我需要做一个很像的声明

<%#((bool)Eval("inactive")) ? "<span style='color:red;font-weight:600;'>INACTIVE</span>" : "<span style='color:green;font-weight:600;'>ACTIVE</span>"%>  

除了不是布尔值,我需要它来接受 3 个条件语句。

所以使用

<%#Eval("Program_Num") %>  

我需要它说

  • 如果Program_Num == 1,则为 X,
  • 如果 Program_Num == 2,则为 y,
  • 如果 Program_Num == 3,则为 z;

我会尽我所能澄清并回答任何问题,谢谢你的帮助。

尝试这样的事情。

<%# (int)Eval("Program_Num") == 1 ? "X" : (int)Eval("Program_Num") == 2 ? "Y" : (int)Eval("Program_Num") == 3 ? "Z" : "default value" %>

就像这样说。

if ((int)Eval("Program_Num") == 1)
    "X"
else if ((int)Eval("Program_Num") == 2)
    "Y"
else if ((int)Eval("Program_Num") == 3)
    "Z"
else
    "default value"

您可以尝试以下操作:

<%#Eval("Program_Num") == 1 ? "X" : Eval("Program_Num") == 2 ? "y" : Eval("Program_Num") == 3 ? "z" %> 

显然,您需要将"x"y"z"替换为您想要显示的任何内容。

它不优雅,但你可以使用它的嵌套版本:

var x = Program_Num == 1 ? "X" : (Program_Num == 2 ? "x" : (Program_Num == 3 ? "y" : "DEFAULT"))

为了清楚起见,我在这里将其保留为干净的 C#。您可以根据 ASP.NET 对其进行调整。

如果你要进入三个级别,那么现在真的是时候开始使用适当的if或切换结构了。