我不知道这是否是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限制,它是它的错误,还是我做错了什么?