TOP
PROFILE
MUSIC TUNE
BBS
LINK

2006年12月20日

p&p Summit 2006のDependencyContainerサンプル

entlib.jpでもエントリを書いてますが、p&p Summit 2006で発表されたObjectBuilderの資料が公開されています。
ObjectBuilder Dependency Injection Framework
このサイトで公開されているサンプルソースは、外部構成ファイルの設定値をOBを利用することでコンストラクタインジェクション形式で注入するDependencyContainerのサンプルなんですが、実際の動きを確認しようにもテストコードに該当コードが含まれていないんですよねぇ・・ってことで私の方で利用方法を示すテストケースを追加してみました。
entlib.jpサイトで公開しています。

DependencyContainerの該当コードはCreateFooTestというテストメソッド内に記述してますが、以下のような設定を構成ファイルに記述しておき、


<ContainerConfig xmlns='container-config'>
<Mappings>
<Mapping FromType='IFoo' ToType='Foo' />
</Mappings>
<BuildRules>
<BuildRule Type='Foo' Mode='Singleton'>
<Constructor>
<Value Type='System.Int32'>14</Value>
<Value Type='System.String'>Hello there</Value>
</Constructor>
<Method Name='Bar'>
<Ref Type='BarBar' />
<Value Type='System.Boolean'>false</Value>
</Method>
</BuildRule>
</BuildRules>
</ContainerConfig>

あとはテストメソッド内の以下のコードで注入することができます。

DependencyContainer container = new DependencyContainer("構成ファイルのXMLドキュメント");
IFoo foo = container.Get<IFoo>();

なかなかいけてますよ。

Posted by GAMMARAY at 2006年12月20日 01:52 | TrackBack
Comments
おお、これが欲しかったんだー。(^_^) Posted by: afukui at 2006年12月20日 09:22
良いサンプルが挙がってましたよ(^^) Posted by: GAMMARAY at 2006年12月20日 13:49
Post a comment









Remember personal info?