Gui*_*hez 5 c# asp.net timespan ternary-operator razor
我试图在这段代码中使用三元运算符,其Model.FirstTechSupportAssigneeElapseTime类型为TimeSpan?:
<dt>Assigned In</dt>
<dd>
@if (@Model.FirstTechSupportAssigneeElapseTime == null)
{ @:N/A }
else
{ @Model.FirstTechSupportAssigneeElapseTime }
</dd>
Run Code Online (Sandbox Code Playgroud)
我试图实现三元运算符,但我失败了,@的处处让我感到困惑.在这种情况下,是否可以拥有三元运算符?
谢谢.
Tra*_*s J 12
请记住你所处的范围.在if语句中你不需要,@因为你在c#范围内.在条件语句中你是剃刀范围,所以你需要@
<dt>Assigned In</dt>
<dd>
@if (Model.FirstTechSupportAssigneeElapseTime == null)
{
@:N/A
}
else
{
@Model.FirstTechSupportAssigneeElapseTime
}
</dd>
Run Code Online (Sandbox Code Playgroud)
这也可以在使用三元运算符时完成,假设elapsetime是一个字符串(如果页面加载时不会出现转换编译错误)
<dt>Assigned In</dt>
<dd>
@( Model.FirstTechSupportAssigneeElapseTime == null ? "N/A" : Model.FirstTechSupportAssigneeElapseTime.ToString() )
</dd>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
9109 次 |
| 最近记录: |