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

时间:2015-12-27 13:15:15

标签: c# asp.net-mvc asp.net-mvc-4

我正在尝试将货币值传递给十进制属性,但MVC会删除“,”。我试过“。”,但MVC也删除了。

public ActionResult MyAction(decimal value)
{
}

我将ajax请求发送到以下网址:

  

/ MyActionα值= 1000,35

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

1 个答案:

答案 0 :(得分:2)

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

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

我创建了一个DecimalModelBinder,如文章所示

我做的另一件事是在发送到行动之前将小数转换为字符串:

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