IoC コンテナーを使用するように WCF サービスをセットアップしたいと考えています。Autofac wiki に WCF 統合に関する記事がありますが、IIS でホストされているサービスとの統合のみを示しています。
しかし、私のサービスは Windows サービスでホストされています。
ここで、オープニングイベントhttp://groups.google.com/group/autofac/browse_thread/thread/23eb7ff07d8bfa03を接続するためのアドバイスを得ました
私はアドバイスに従いましたが、これは私がこれまでに得たものです:
private void RunService<T>()
{
var builder = new ContainerBuilder();
builder.Register(c => new DataAccessAdapter("1")).As<IDataAccessAdapter>();
ServiceHost serviceHost = new ServiceHost(typeof(T));
serviceHost.Opening += (sender, args) => serviceHost.Description.Behaviors.Add(
new AutofacDependencyInjectionServiceBehavior(builder.Build(), typeof(T), ??? ));
serviceHost.Open();
}
AutofacDependencyInjectionServiceBehavior には、3 つのパラメーターを取る ctor があります。3 つ目はタイプIComponentRegistration
のもので、どこから入手できるかわかりません。何か案は ?
前もって感謝します。