2017-10-30 15 views
0

これは実現可能ですか?アセンブリを使用するすべてのアプリにコントローラを登録

Foolibに依存するすべてのmvcアプリケーションに修正ルートを持つmvcコントローラを自動的に追加するライブラリ(Foolibと呼ぶこともできます)を作成します。

私たちが開発しているいくつかのイントラネットアプリケーションではFoolibを使用する予定であり、Foolibを使用するすべてのアプリケーションに標準の設定オブジェクトを受け取るようにしたいと考えています。 Foolibを使用するすべてのWebアプリケーションに自動的にコントローラを登録することが可能であろう

public FooController 
{ 
    [Route("/Foo")] 
    public Post(object obj) 
    { 
    } 
} 

:Foolibで

のようなコントローラ何かがあるでしょうか?

通常、登録コントローラへの呼び出しはStartupクラスで行われますが、他のmvcアプリケーション開発者には「この行をスタートアップに追加する」ソリューションを使用する必要はありません。 the docs

によると

答えて

0

「デフォルトMVCによっては、依存関係ツリーを検索し、(でも他のアセンブリで)コントローラを見つけるでしょう。」

だからうまくいくはずです。

+0

しかし、私はFoolibを使っているアプリケーションは、この 'var assembly = typeof(FooController).GetTypeInfo()を追加する必要があると思います。 services.AddMvc() .AddApplicationPart(assembly); '?私は*すべての*アセンブリがコントローラのためにスキャンされているとは思わない? – mortb

関連する問題