MVC:在十进制参数中传递货币的问题

本文关键字:货币 问题 十进制 参数 MVC | 更新日期: 2023-09-27 18:28:19

我试图将货币值传递给十进制属性,但MVC删除了","。我尝试过使用".",但MVC也删除了。

public ActionResult MyAction(decimal value)
{
}

我将ajax请求发送到以下URL:

/MyAction?值=1000,35

但当我发送请求时,我收到了100035的值。为什么?

MVC:在十进制参数中传递货币的问题

为了解决我的问题,我使用了这篇文章:

http://haacked.com/archive/2011/03/19/fixing-binding-to-decimals.aspx/

我创建了一个DecimalModelBinder,就像文章显示的一样

我做的另一件事是在发送到操作之前将十进制转换为字符串:

var url = string.Format("/MyAction?value={0}", decimalValue);