c#Controller不接受utf-8字符

时间:2014-07-01 16:43:20

标签: c# utf-8 asp.net-web-api controller

我有一个Web API控制器POST方法,它接受传入的JSON。发布的JSON是UTF-8编码的,有时包含扩展的ascii字符,例如¾。只要包含这些参数,参数就会返回null。

一个简单的例子:

    public void Post(Fruit fruit)
    {
        if (fruit == null)
        {//Post fails}
        }
    }

    public class Fruit
    {
        public string name { get; set; }
        public string price { get; set; }
    }

使用powershell的Invoke-RestMethod进行测试:

$data = @"
{
  "name": "Orange",
   "size": "5¾ cm"
}
"@

Invoke-RestMethod -Body $data -Uri "http://localhost:nnnnn/api/fruit" -Method POST -ContentType "application/json"

如何设置编码以便模型化?

0 个答案:

没有答案