在cshtml文件中执行Double.Parse时的Razor语法

问题描述:

我正在尝试使用Razor语法在ASP.NET cshtml文件中执行Double.Parse。我想检查并查看epc.EditAmount是否等于零并有条件地添加样式。它作为一个字符串传入,所以我想把它变成一个双精度和比较。出于某种原因,这里的语法很糟糕,我无法弄清楚为什么。在cshtml文件中执行Double.Parse时的Razor语法

<dd class="@(Double.Parse(epc.EditAmount) != 0.0 ? "RedFont" : "") "> 
    @epc.EditAmount.Replace("$", "") 
</dd> 

你可能想要做这样

@{ 
    var classValue = Double.Parse(epc.EditAmount) != 0.0 
     ? "RedFont" 
     : ""; 
} 

<dd class="@Html.Raw(classValue)"> 
    @epc.EditAmount.Replace("$", "") 
</dd> 
+0

这就是我终于实现了。我无法弄清楚为什么对方错了。 –

+0

很高兴帮助。干杯! – Jeff