我不得不使用if/else语句来输出绑定到用户选择的货币值。喜欢的东西:如何在传递查看的模型中使用Equal
@if (Model.ProcessingRadioButtons.Equals("Standard"))
{
@Html.DisplayFor(m => m.priceProcessingStandard)
}
else if (Model.ProcessingRadioButtons.Equals("Expedited"))
{
@Html.DisplayFor(m => m.priceProcessingExpedited)
}
else if (Model.ProcessingRadioButtons.Equals("Urgent"))
{
@Html.DisplayFor(m => m.priceProcessingUrgent)
}
但它不显示基于单选按钮我选择什么,所以我知道if
/else if
陈述是错误的。我把最后一个else if
变成了else
,拿出了(Model.ProcessingRadioButtons.Equal("Urgent"))
,它显示500(见下面的价格实体)。
这是单选按钮的枚举:
public enum Processing
{
Standard,
Expedited,
Urgent
}
和无线电按钮实体(使用助手来完成的单选按钮):
public Processing? ProcessingRadioButtons { get; set; }
这些是价格的实体:
[DataType(DataType.Currency)]
[DisplayFormat(DataFormatString = "{0:c}")]
public decimal priceProcessingStandard = 0;
[DataType(DataType.Currency)]
[DisplayFormat(DataFormatString = "{0:c}")]
public decimal priceProcessingExpedited = 250;
[DataType(DataType.Currency)]
[DisplayFormat(DataFormatString = "{0:c}")]
public decimal priceProcessingUrgent= 500;
任何指导?
谢谢。您的解决方案允许显示货币符号'$'。不知道为什么,否则两个答案都是正确的,但你的更简洁。 – REMESQ 2012-03-20 20:26:38
任何想法,为什么我必须“解决”'Processing'为'Namespace.ViewModels.MyData.Processing'?我明显有'@ using'语句。 – REMESQ 2012-03-20 20:27:43
而不是放置“@using”语句,你可以简单地使用完全限定名......在你的情况下“Namespace.ViewModels.MyData.Processing”...和si如果这是正确的,并且移动它到@using。 – Romias 2012-03-20 20:46:07