4

ASP.NET コアで API コントローラーのカスタム パラメーター バインディングを実行したい状況があります。WebAPI 2.0 では、IValueProvider などのさまざまなインターフェイスを実装し、ValueProviderFactory を提供することで、プリミティブ型へのカスタム バインディングを実行できました。ここで見つけたドキュメントから理解できる限り、これは ASP.NET コアには当てはまらないようです。

MutableObjectModelBinderの動作をオーバーライドするこの記事につながるこの SO 投稿に気付きました。次のような行に沿って何かを実行できるように見えます。

    [HttpGet]
    [Route("api/{domain}/[controller]")]
    public IEnumerable<string> Get([ModelBinder(BinderType = typeof(MyCustomBinder))]string orderby)
    {
        //Do stuff here
    }

私はプリミティブ型を扱っているだけなので、これは必ずしも正しいとは思えませんが、これを行う別の方法に関するドキュメントが見つからないようです。どんな助けでも大歓迎です。

編集:誰かがこれに出くわした場合に備えて、締め切りに間に合わなければならないため、ヘルパークラスを使用してパラメーターを解析することにしました。これを理解する機会があれば、この問題に関連する解決策を具体的に投稿します。

4

1 に答える 1