@model MSDiary.Models.Saldo
<h3>O seu saldo actual: <span style="color:@ViewBag.color">@obtemSaldo()</span></h3>
@functions
{
HtmlString obtemSaldo()
{
decimal saldo = 0;
if (Model != null)
{
foreach (var item in Model.Despesas)
{
saldo -= item.DespesaValor;
}
foreach (var item in Model.Rendimentos)
{
saldo += item.RendimentoValor;
}
Model.valor = saldo;
if(saldo < 0)
{
ViewBag.color = "red";
}
else
{
ViewBag.color = "green";
}
}
return new HtmlString(saldo.ToString());
}
}
我想根据saldo的值来表示平衡,当余额<0时获得红色,当&gt;时获得绿色。 0我尝试使用viewBag根据余额的结果设置颜色,然后将其设置为调用函数的位置,但它不起作用,如果有人可以给我一个tipe我欣赏:)
答案 0 :(得分:0)
您在将值分配给.border-gold {
border-color: #f4cc55 !important;
}
.color-red {
color: #FF0000;
}
之前设置颜色属性。
尝试在ViewBag
之后编写<h3>
代码,如下所示:
@functions
答案 1 :(得分:0)
这样解决了我自己:
@model MSDiary.Models.Saldo
@helper obtemSaldo()
{
decimal saldo = 0;
if (Model != null)
{
foreach (var item in Model.Despesas)
{
saldo -= item.DespesaValor;
}
foreach (var item in Model.Rendimentos)
{
saldo += item.RendimentoValor;
}
Model.valor = saldo;
if(saldo < 0)
{
ViewBag.color = "red";
<p style="color:red">@saldo</p>
}
else
{
ViewBag.color = "green";
<p style="color:green">@saldo</p>
}
}
}
<h3>O seu saldo actual: <span>@obtemSaldo()</span></h3>