DI (, (IIIRC) StructureMap) Per Thread, , , , IService Controller , .
Controller , , IService , .
/ IService Controller. - :
public ThreadSafeService : IService
{
private readonly IServiceFactory factory;
public ThreadSafeService(IServiceFactory factory)
{
this.factory = factory;
}
public void DoSomething()
{
this.factory.Create().DoSomething();
}
}
IServiceFactory :
public interface IServiceFactory
{
IService Create();
}
IServiceFactory , IService Create, - , .
- .