属性ルーティングが有効になっている ASP.NET Web API 2.1 プロジェクトと、次のように装飾されたコントローラー アクションがあります。
[Route("api/product/barcode/{barcodeType}/{barcode}")]
public async Task<IHttpActionResult> GetProduct([FromUri] BarcodeSearchCriteria searchCriteria)
ここで、BarcodeSearchCriteria は複合型です。
public class BarcodeSearchCriteria
{
public string Barcode { get; set; }
public string BarcodeType { get; set; }
}
次のような「通常の」URL でうまく機能します。
/api/product/barcode/EAN/0747599330971
しかし、同時に次のような URL をサポートするにはどうすればよいでしょうか。
/api/product/barcode/?barcodeType=EAN&barcode=0747599330971
「読み取り可能」モードに切り替える前に、* .webtest で使用していました。