IoC コンテナとして Simple Injector を使用しています。SimpleInjector は、この単純な手法を使用して、Per Thread と Per Web Request の混合ライフ スタイルを処理します。
container.RegisterPerWebRequest<IWebUnitOfWork, UnitOfWork>();
container.RegisterLifetimeScope<IThreadUnitOfWork, UnitOfWork>();
container.Register<IUnitOfWork>(() => container.GetInstance<UnitOfWork>());
// Register as hybrid PerWebRequest / PerLifetimeScope.
container.Register<UnitOfWork>(() =>
{
if (HttpContext.Current != null)
return container.GetInstance<IWebUnitOfWork>() as UnitOfWork;
else
return container.GetInstance<IThreadUnitOfWork>() as UnitOfWork;
});
、&IUnitOfWork
などのクラスでインターフェイスを装飾したいと考えています。何を飾ればいいですか?UnitOfWorkAuthoriseDecorator
UnitOfWorkExceptionDecorator
UnitOfWorkTraceDecorator
IUnitOfWork
IWebUnitOfWork
&IThreadUnitOfWork
IUnitOfWork
IWebUnitOfWork
&& _IThreadUnitOfWork
UnitOfWork
- 他の何か