MVCと同等のWebAPIはありActionMethodSelectorAttribute
ますか?
私の具体的な目的は次のとおりです。たとえば、aがResourceController
あり、コントローラーにアクセスするときに、単一のリソース( )またはリスト( )POST
を受信できるようにしたいと考えています。 Resource
IEnumerable<Resource>
異なるパラメーターを使用して2つのメソッドを作成すると、逆シリアル化プロセスで何らかの評価が行われることを期待していましたが、そうではないようです(率直に言って、コンテンツネゴシエーションと、 JSONなどの多くのデータ形式では、データ型を推測するのが困難です)。だから私はもともと持っていた:
public HttpResponseMessage Post(Resource resource) {...}
public HttpResponseMessage Post(IEnumerable<Resource> resources) {...}
...しかし、これは「複数のアクション」エラーを受け取ります。そこで、メソッドに注釈を付ける方法を調べてみましActionMethodSelectorAttribute
たが、これはMVCルーティング専用であり、WebAPIではないこともわかりました。
だから...複数のリソースをPOSTするための異なるパスを必要とせずに(これは世界の終わりではありません)、私は区別するために何をしますか?
に沿った私の考えはActionMethodSelectorAttribute
、複数を指定するクエリパラメータを必要とすることでした。これは、別のパスと同じだと思います。だから、私はこれを行うための現在の必要性を排除したと思いますが、それでもWebAPIに相当するものがあるかどうか知りたいですActionMethodSelectorAttribute
:)