-1

複数のnull可能なパラメータに依存するWeb APIコントローラにDELETEアクションメソッドがあります。ここでASP.NET Web APIで複数のオプションパラメータを持つDELETE

は、私は現在、それをやっている方法です:

[HttpDelete("{id}?productId={productId}&categoryId={categoryId}")] 
public void Delete(int Id, int? productId = null, int? categoryId = null) 
{ 
    _ppManager.Delete(Id, productId, categoryId); 
} 

はこの正しいですか? DELETEはPOSTよりもGETに似ているとわかりました。そのため、Nullableでなければならないので、クエリ文字列テクニックを使用しました。

+0

特に問題はありますか?あなたの必要性をより良く説明してください。 –

+1

ルートにクエリ文字列パラメータを配置しないでください。自動的に処理されます。 – SLaks

答えて

0

私の知る限りではURLパラメータが自動的に名前が一致して、あなたのアクションパラメータにルーティングされdocumentationこのpostから見ることができますので、あなたはちょうどそのようにそれを置くことができるよう:

[HttpDelete("{id:int}")] 
public void Delete(int Id, int? productId = null, int? categoryId = null) 
{ 
    _ppManager.Delete(Id, productId, categoryId); 
} 

とのマッチングURLパラメータは自動的にルーティングされます。

関連する問題