日期:2014-05-17  浏览次数:20531 次

Web Api在POST请求时,当参数类型是简单类型,不能从request body获取的问题
同一个请求



[HttpPost]
public bool InsertSingle(Answer answer)
{
    //正确
}



[HttpPost]
public bool InsertSingle(int AID,int QID)
{
    //错误(404)
}


这个问题在博客园见过比较多的讨论:
http://www.cnblogs.com/dudu/archive/2012/07/12/asp_net_web_api_json.html

http://www.cnblogs.com/xiaoweiyu/archive/2012/06/12/2546116.html

时至今日,有没有什么简单优雅的方法(比如扩展/显式配置某部分)可以让POST请求时,Action参数为简单参数,但是依然可以从request body获取呢?(起始就是像ASP.NET MVC一样就可以,MVC中两种方式都是是正常的)

------解决方案--------------------
建个MODEL类,我觉得也挺方便的呀

[HttpPost]
public bool InsertSingle(Answer answer)
{
    //正确
}

public class Answer
{
   public int AID {get; set;}
   public int QID {get; set;}
}