2009-05-12 10 views
2

私はキャッスルウィンザーを使用して依存性注入に依存するウェブサイトを持っています。ASP .NET環境における依存性注入と物理パス - howto?

ファイルへのパスを知る必要があるコンポーネントを使用する必要があります。私は、Webサイトのルートディレクトリへの仮想パスの相対パスとして設定ファイルのパスを指定したいと思いますので、私はこれを行うだろう:

<component id="configuration.documentLoader" type="SomeModule.XmlDocumentLoader, SomeModile"> 
    <parameters> 
     <FileName>/documents/file.dat</FileName> 
    </parameters> 
</component> 

しかし、私が使用していますコンポーネントは、パスが満杯であることを期待上記の例は失敗します。設定ファイルにフルパスを書き込むことはオプションではありません。

どうすれば解決できますか?

翻訳を行う別のコンポーネントを追加することを考えていましたが、現在のコンポーネントをそのコンポーネントに依存させていました。これは過剰ですか?既存のコンポーネントを変更せずにこれを解決するよりエレガントな方法はありますか?

答えて

2
IContributeComponentModelConstruction 

これを使用して、相対パスを絶対パスに切り替えることができます。