1

Asp.net MVC 3の依存性注入を(Forms ViewEngineを使用して)何らかの方法で活用して、別のライブラリからUserControlsを注入することは可能ですか?私はすでにMEFを使用して他のものをMvcApplicationにロードしています。

拡張可能な型システムでシステムを構築したいので、これが必要です。タイプベンダーが提供されたタイプのカスタムコントロールを挿入できるようにしたいと思います。提供された型を処理する方法を知っているカスタムMetadataProviderをすでに持っています(ModelMetadata.TemplateHintプロパティを設定します)。

問題は、TemplateHintが適切に処理され、Html.EditorForModelの調整時にカスタムコントロールが表示されないように、どこにMEFをプラグインできるかです。

4

1 に答える 1

2

MVC3ベータ版の現在のServiceLocatorインフラストラクチャを使用してこれを行う方法を考えることはできません。しかし、私は2つの代替アプローチを考えることができます:

  1. HTMLデリゲートをカスタムコントロールにレンダリングする代わりに、それらの出力を返すエディターテンプレートを用意します。
  2. 部分ビューのルックアップを実行できる独自のViewEngineを作成し(パスは「EditorTemplates / YourTypeName」などの形式になります)、カスタムコントロールとの通信方法を知っているビューを返します。
于 2010-10-07T19:16:33.470 に答える