【问题标题】:Postman - Multiple actions were found that match the request in Web Api邮递员 - 在 Web Api 中找到多个与请求匹配的操作
【发布时间】:2018-06-28 13:11:02
【问题描述】:

我有这个 webapi2 控制器:

public class HomesController : ApiController

我已经创建了一个这样的自定义操作:

[Route("api/Homes/GetDetails")]
[HttpGet]
public IHttpActionResult GetDetails(string id)
{
    var x = db.Homes.Where(b => b.HomeID == id).Select(b => new { Description = b.Description, FacebookLink = b.FacebookLink , InstagramLink = b.InstagramLink });

    if (x == null)
    {
        return NotFound();
    }

    return Ok(x);
}

我正在 Postman 中导航以使用此 URL 测试此操作:

http://localhost:59381/api/Homes/GetDetails/TEST

但我遇到了错误:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" 

我已将此添加到 webapiconfig:

 config.Routes.MapHttpRoute(
            name: "DefaultApi",
            routeTemplate: "api/{controller}/{id}",
            defaults: new { id = System.Web.Http.RouteParameter.Optional }
        );

谁能帮我如何调用这个动作并在 Postman 中测试它?

【问题讨论】:

  • 您能否发布邮递员的完整图片,显示完整的请求和响应。

标签: c# asp.net-web-api asp.net-web-api2 postman


【解决方案1】:

将属性路由更改为这样的:

 [Route("api/Homes/GetDetails/{id}")]

应该有帮助。

【讨论】:

    猜你喜欢
    • 2022-01-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-04-08
    • 1970-01-01
    • 2015-05-01
    相关资源
    最近更新 更多