路由属性不适用于Web Api中的HttpPost(找不到404)

时间:2019-11-08 18:07:13

标签: c# rest asp.net-web-api controller http-post

.NET Web API中,我有一个使用[HttpPost]方法的控制器。我尝试使用5个伪参数通过[Route]属性来区分其路由。数据本身将通过[FromBody]发送和接收:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Net.Http;
using System.Web.Http;
using api.Models;
using System.Threading.Tasks;
using System.Data.SqlClient;
using System.Data;    

...
//POST
[Route("api/myControllerPath/p_dummyParam1/p_dummyParam2/p_dummyParam3/p_dummyParam4/p_dummyParam5")]
[HttpPost]
        public async Task<IHttpActionResult> doStuff
            (
              string p_dummyParam1
            , string p_dummyParam2
            , string p_dummyParam3
            , string p_dummyParam4
            , string p_dummyParam5
            , [FromBody] List<int> IDs
            )
        {
            List<int> listIDs;       
                    listIDs = IDs;    
                    return Ok();       
        }

但是,尽管该路径与[Route]描述(http://localhost:8080/api/myControllerPath/1/2/3/4/5)匹配,但此路径失败并显示404'Not Found'。有任何想法吗? [Route]属性不能与POST方法一起使用吗?我的GET并没有这个问题。

0 个答案:

没有答案