[英]Put thousands separator in MVC
我像这样通过 ViewData 值发送到我的视图。
Controller
public List<string> ListarTarjetas()
{
OpexDB db = new OpexDB();
List<string> Tarjetas = new List<string>();
using (db)
{
var listTarjetasInformativas = db.SP_TARJETASINFORMATIVAS();
foreach(var item in listTarjetasInformativas)
{
Tarjetas.Add(item.NOMBRE);
Tarjetas.Add(item.MONTO.ToString());
}
}
return Tarjetas;
}
public ActionResult Index()
{
var DatosTarjetas = ListarTarjetas();
ViewData["PrimerNombre"] = DatosTarjetas[0];
ViewData["PrimerMonto"] = String.Format(DatosTarjetas[1], new CultureInfo("es-HN"));
return View();
}
我的 razor 视图的一部分:
<div class="inner">
<p>@ViewData["PrimerNombre"]</p>
<p>@ViewData["PrimerMonto"]</p>
<div class="icon">
<i class="ion ion-pull-request"></i>
</div>
</div>
在我看来,在<p>@ViewData["PrimerMonto"]</p>
部分反映了这个值 7218.19,但我希望它以这种方式反映出来,7,218.19。
我试过这样的:
ViewData["PrimerMonto"] = String.Format(DatosTarjetas[1], new CultureInfo("es-HN"));
以及其他方式。 但我没有得到任何改变。
感谢您提供任何帮助。
您可以将其格式化为数字或货币,但如果它是视图数据中的字符串,则需要将其转换为数字。 另见https://learn.microsoft.com/en-us/do.net/standard/base-types/standard-numeric-format-strings
[TestMethod]
public void TestNumberFormat()
{
string numberStringValue = "7891.12";
double numberNumericValue = double.Parse(numberStringValue);
string formattedValueWithSymbol = string.Format(new CultureInfo("es-HN"), "{0:c}", numberNumericValue);
string formattedValue = string.Format("{0:N}", numberNumericValue);
Console.WriteLine(formattedValueWithSymbol);
Console.WriteLine(formattedValue);
}
这个的output就是
Standard Output:
L7,891.12
7,891.12
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.