我尝试为Get
操作设置路由,该操作只有一个对象作为参数。
我有以下代码:
public class LuteImage
{
public string Id { get; set; }
public string Dimensions { get; set; }
public string Quality { get; set; }
}
public class ImageController : ApiController
{
public HttpResponseMessage Get(LuteImage luteImage)
{
}
}
在我的WebApiConfig.cs
文件中,我在默认路由之前有以下路由
config.Routes.MapHttpRoute(
name: "ImageOptions",
routeTemplate: "api/image/{id}/{dimensions}/{quality}",
defaults: new {
controller = "image",
dimensions = RouteParameter.Optional,
quality = RouteParameter.Optional,
}
);
但是,当我导航到localhost:xxx/api/image/123/300x300/b
时,luteImage
属性只是null
。
如何允许luteImage
对象获取参数?