新しいasp.netWebAPIを使用しており、オプションのパラメーターを渡したいと思います。?
シンボルを使用してパラメータを渡すことができるように、属性を設定する必要があるのは正しいですか?
これがuriテンプレートで行われる前は、私は信じています。
誰か例がありますか?
私は現在、コントローラーにintとして到着するURLでIDを渡しています。しかし、私はいくつかの日付を渡す必要があります。
新しいasp.netWebAPIを使用しており、オプションのパラメーターを渡したいと思います。?
シンボルを使用してパラメータを渡すことができるように、属性を設定する必要があるのは正しいですか?
これがuriテンプレートで行われる前は、私は信じています。
誰か例がありますか?
私は現在、コントローラーにintとして到着するURLでIDを渡しています。しかし、私はいくつかの日付を渡す必要があります。
null 許容型を使用して、パラメーターをオプションにすることができます。
public class OptionalParamsController : ApiController
{
// GET /api/optionalparams?id=5&optionalDateTime=2012-05-31
public string Get(int id, DateTime? optionalDateTime)
{
return optionalDateTime.HasValue ? optionalDateTime.Value.ToLongDateString() : "No dateTime provided";
}
}
Ian によって提供された前の回答に加えて、正しいデフォルト値を提供することもできます。これは、何かが渡されたかどうかを確認する必要がない、よりクリーンなオプションだと思います。ちょうど別のオプション。
public class OptionalParamsController : ApiController
{
// GET /api/optionalparams?id=5&optionalDateTime=2012-05-31
public string Get(int id, DateTime optionalDateTime = DateTime.UtcNow.Date)
{...}
}