在创建新的ASP.net WebAPi Rest控制器时,visual studio会像这样添加DELETE操作
// DELETE: api/foo/5
public void Delete(int id)
{
}
我可以成功调用该端点
但是我的系统中的'id'是字符串哈希所以我需要将'id'作为字符串而不是int传递,例如
// DELETE: api/foo/58c75babbf61cda99c84af8b
public void Delete(string id)
{
}
但是当我更改此内容时,不再调用DELETE操作,我收到错误"No HTTP resource was found that matches the request URI "
任何想法为什么?怎么绕过这个?
答案 0 :(得分:2)
您可以自己指定路由模板,并在其中指定id是guid:
[HttpDelete, Route("api/foo/{id}")]
public void Delete(string id)
{
}