当有字符串参数构造函数时,无法将json发送到HttpPost方法

时间:2013-11-05 03:29:23

标签: c# asp.net json http-post

我不知道这是否是ASP.NET限制的错误。比方说,我有一个名为Info的课程。

public class Info
{
    public int Id { get; set; }

    public string Data { get; set; }

    public Info(int id)
    {
        this.Id = id;
    }
}

这是控制器上的方法。

[HttpPost]
[ActionName("Post")]
public HttpResponseMessage Post([FromBody]Info info)

当我将json发布到网站时,它工作正常。

POST /test/post HTTP/1.1
Host: localhost:60002
Content-Type: application/json;charset=UTF-8
Cache-Control: no-cache

{ "Id": "1", "Data": "Test" }

问题是当我向Info添加字符串参数构造函数时它停止工作。

public class Info
{
    public int Id { get; set; }

    public string Data { get; set; }

    public Info(int id)
    {
        this.Id = id;
    }

    // this messes things up
    public Info(string data)
    {
        // to do 
    }
}

我的问题是,它是ASP.NET限制,它是它的错误,还是我做错了什么?

0 个答案:

没有答案