如何在Web Api中将对象作为参数传递

时间:2017-04-21 08:53:54

标签: asp.net-mvc asp.net-web-api asp.net-web-api2

我想在web api GET和POST方法中将对象作为参数传递。我的代码是,

    [HttpGet]
    [Route("mytest/list/{model}")]
    public IHttpActionResult GetAllTypes(TestModel model)
    {
        //my logic here
    }

当我调用它时,控制台会收到错误,但未找到错误。我试过这个,

   [HttpGet]
    [Route("mytest/list/{model?}")]
    public IHttpActionResult GetAllTypes(TestModel model)
    {
        //my logic here
    }

但是,参数对象获取空值。

1 个答案:

答案 0 :(得分:6)

不要通过GET传递对象。

POST一个对象并使用[HttpPost]属性。

如果你真的想通过GET来做,你可以使用它:

 [HttpGet]
 public IHttpActionResult GetAllTypes([FromUri] TestModel model)