以下是Web API模板的默认方法。大多数时候我使用application / json作为Content-Type但是当我使用application / x-www-form-urlencoded并将数据传递给api作为value = test时。它无法识别或绑定。
public void Post([FromBody]string value)
{
}
当我将值传递给= test而不是value = test时,这个东西工作但是如果我将相同的东西传递给MVC控制器它就可以了。
如果我做这样的事情那么它就可以了。
public class TestModel
{
public string value {get;set;}
}
public void Post([FromBody]TestModel model)
{
}
第一种方法有什么问题?为什么它不起作用?为什么它使用MVC Controller或Binding而不是Web API参数绑定?
答案 0 :(得分:0)
当您使用表单数据(application / x-www-form-urlencoded)时,请使用[FormForm]而不是[FromBody]。