2017-07-31 14 views
0

私のルートは正しく設定されていて、メソッドには装飾されたタグがあります。 "GetMessage"メソッドはうまく動作しますが、 "DeleteAllLoc" return "要求されたリソースはHTTPメソッド 'GET'をサポートしていません。" 彼らは同じです...何が問題なのですか?同じメソッド、異なる出力。要求されたリソースがHTTPメソッド 'GET'をサポートしません

[RoutePrefix("api/Loc")] 
public class LocController : ApiController 
{  
    [Route("DeleteAllLoc")] 
    public string DeleteAllLoc() 
    { 
     return "OK"; 
    } 
    [Route("GetMessage")] 
    public string GetMessage() 
    { 
     return "Hello"; 
    } 
} 

答えて

0

それはGET要求だと指定する[HttpGet]属性を使用してDeleteAllLoc方法を飾る - 私はそれがあるため、メソッド名のDELETEとしてそれを推測すると思います。

+0

I [HttpGet]属性を追加して問題を解決しました。ありがとう – Oladhamzeh

+0

これは本当の問題ではない何かのための良い解決策ではありません。私はこれを読むことをお勧めします:https://docs.microsoft.com/en-us/aspnet/web-api/overview/web-api-routing-and-actions/routing-in-aspnet-web-api - それはあなたが "問題"のいくつかの基本的な理解を得るのを助けるでしょう。また、http://www.restapitutorial.com/lessons/httpmethods.htmlは、さまざまなhttp動詞の使用を裏付けるのに役立ちます。 – jps

関連する問題