2
我正在使用SimpleInjector进行依赖注入,并且我刚刚发现可以在单个调用链中多次注册相同的装饰器,装饰器将按照请求组态。例如,我可以将我的RepositoryTraceDecorator为我的仓库类的第一个和最后装饰:调用链中同一个装饰器的多次注册
container.RegisterDecorator(typeof(IRepository<>),
typeof(RepositoryTraceDecorator<>));
container.RegisterDecorator(typeof(IRepository<>),
typeof(RepositoryDetectChangesDecorator<>));
container.RegisterDecorator(typeof(IRepository<>),
typeof(CrossRepositoryTransactionScopeDecorator<>));
container.RegisterDecorator(typeof(IRepository<>),
typeof(RepositoryTraceDecorator<>));
container.RegisterDecorator(typeof(IRepository<>),
typeof(RepositoryExceptionDecorator<>));
由设计是本,所以我可以依靠这个功能吗?