你好一点新手 - 使用VS 2013 ASP.net WebApi - 有关于uri的规范:
/device/{deviceId}/register
尝试过以下几件事:
public class DeviceController : ApiController
{
[Route("/{deviceId}/register")]
[HttpGet]
public async Task<IHttpActionResult> Register(string deviceId)
{
}
}
并尝试更新RouteConfig.RegisterRoutes
:
routes.MapRoute(
name: "Device",
url: "device/{deviceid}/",
defaults: new { deviceId = "", action = "Register"}
);
答案 0 :(得分:0)
您应该将Route属性调用更改为:
[Route("device/{deviceId}/register")]
并删除您在RouteConfig.RegisterRoutes中完成的所有更改 - 不需要它们。
然后它会正常工作。属性路由与HttpConfiguration对象中定义的路由无关。