2つの異なるGETメソッド、1つは特定のリソースを取得するためのリソースの数を取得するためのメソッドを持つときに問題が発生します。c#OWIN Web API - 要求に一致する複数のアクションが見つかりました:GET
Startup.cs
config.Routes.MapHttpRoute("DefaultAPI",
"api/{controller}/{action}",
new { id = RouteParameter.Optional });
Controller.cs
[RoutePrefix("api/Files")]
public class FileController : ApiController
{
// /api/Files/
[Authorize]
[Route("")]
public IHttpActionResult GetAll()
{
}
// /api/Files/Id/
[Authorize]
[Route("Id")]
public async Task<HttpResponseMessage> Get([FromBody] string id)
{
}
// /api/Files/Upload
[Authorize]
[HttpPost]
[Route("Upload")]
public async Task<HttpResponseMessage> Post()
{
}
// /api/Files/Delete
[Authorize]
[Route("Delete")]
public IHttpActionResult Delete([FromBody] string id)
{
}
これは私に新しいですし、私はまたHttpResponseMessageと同様IHttpActionResultの両方を使用して間違いを犯しています知っています私はルーティングを見つけた後でそれを変更すると思った。
エラー:
Startup.csが
"api/{controller}/{action}"
を有する場合、それは "API/{コントローラ}/{ID}" である場合、それは 、見つかりません404を返し、エラーがあります。
Multiple actions were found that match the request: \r\nGetAll