Asp.NET MVC Razor 十进制格式?到 #。###,##

Asp.NET MVC Razor Format Decimal? to #.###,##

我目前正在开发 ASP.NET MVC 4.5 应用程序。

我尝试将模型中的 属性 渲染为正确的数值:

ViewModel 中的属性:

public decimal? Price { get; set; }

数据库中的数据如下所示:99999,99

我想要的格式如下所示:99.999,99

在我的剃须刀视图中,我使用 属性 这样的:

@Model.Price

不幸的是它看起来仍然是这样的:99999.99

您知道如何根据我的观点正确设置 十进制值的格式吗? 值?

还有不使用显示模板的解决方案吗?

谢谢!!!

试试这个

decimal value = 99999.99M;
string display = value.ToString("N2", CultureInfo.GetCultureInfo("es"));

显示器

99.999,99

我已经尝试了以下所有值:

"C" 用于显示您所在文化的货币

"C2"小数点后两位数的货币

"C2", culture:我使用的是小数点为逗号的文化

"N2", culture:因为我只想显示数字,没有货币符号

请尝试使用本指南

using System;
using System.Globalization;

public class TestClass
{
     public static void Main()
     {
         int i = 100;

         // Creates a CultureInfo for English in Belize.
         CultureInfo bz = new CultureInfo("en-BZ");
         // Displays i formatted as currency for the bz.
         Console.WriteLine(i.ToString("c", bz));

         // Creates a CultureInfo for English in the U.S.
         CultureInfo us = new CultureInfo("en-US");
         // Display i formatted as currency for us.
         Console.WriteLine(i.ToString("c", us));

         // Creates a CultureInfo for Danish in Denmark.
         CultureInfo dk = new CultureInfo("da-DK");
         // Displays i formatted as currency for dk.
         Console.WriteLine(i.ToString("c", dk));
     }
}