我有一个问题,其中1000值无法在cshtml中正确转换为货币。

在cshtml页面中,以下表达式:

@((itm.SelectedQty > 0) ? (itm.SelectedQty * itm.ItemAmount).ToString("{0:C}") : "")


为其他小于1000的值返回正确的值,但不返回1000。

示例1000 * 1 = 1这是错误的。

请提出一些解决方案。

最佳答案

尝试这个:

var currency = string.Format("{0:C}", Convert.ToDecimal(myoneyString));


或这个:

var currency = string.Format("{0:#.00}", Convert.ToDecimal(myMoneyString));


更新:

根据您的代码使用它,如下所示:

@((itm.SelectedQty > 0) ? string.Format("{0:C}", (itm.SelectedQty * itm.ItemAmount).ToString())

10-06 00:36