繁体   English   中英

使用逗号作为小数点分隔符

[英]Using comma as decimal separator

用户从客户端插入一个双数,唯一的规则必须是,如果它有“点”,则必须将其转换为逗号。 问题是,当我通过 AJAX 将带有逗号作为分隔符的数字传递给控制器​​时,控制器中的参数 double 无法读取该值并崩溃。 这就是我必须将参数字符串放入控制器以便它可以读取值的原因。

var pesoArticolo = $("#editPesoArticoloTextBox").val();
pesoArticolo = pesoArticolo.replace(".", ",");
[HttpGet]
public JsonResult ProcessEditPesoArticolo(int idArticolo, string pesoArticolo)
{           
  var pesoArticoloDouble = double.Parse(pesoArticolo, CultureInfo.InvariantCulture);
}

控制器中的问题是我找不到任何将分隔符转换为“逗号”的方法。 CultureInfo.InvariantCulture 也有问题,如果数字是 0,067,它会删除所有前导零并变成 67。

有什么解决办法吗? 我需要使用逗号作为分隔符,因为它必须保存到一个数据库(浮点字段)中,该数据库也由另一个使用逗号作为分隔符的软件读取。

您将需要使用使用逗号作为小数点分隔符的文化(例如 - 德国的“DE-de”)

[HttpGet]
public JsonResult ProcessEditPesoArticolo(int idArticolo, string pesoArticolo)
{           
  // replace DE-de with your own culture
  var pesoArticoloDouble = double.Parse(pesoArticolo, new CultureInfo("DE-de"));
}

https://dotnetfiddle.net/cuTggE

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM