ile birden fazla iş parçacığı üzerinde bağımlılıkları kullanma IoC konteyneri olarak Simple Injector kullanıyorum. SimpleInjector Maalesef (ve tabii ki!) this simple technique to handle mixed life style for Per Thread and Per Web RequestParallel.ForEach
container.RegisterPerWebRequest<IWebRepository, Repository>();
container.RegisterLifetimeScope<IThreadRepository, Repository>();
container.Register<IRepository>(container.GetInstance<Repository>());
// Register as hybrid PerWebRequest/PerLifetimeScope.
container.Register<Repository>(() =>
{
Repository repository;
if (HttpContext.Current != null)
repository = (Repository)container.GetInstance<IWebRepository>();
else
repository = (Repository)container.GetInstance<IThreadRepository>();
return repository;
});
kullanır, başka yerde benim UnitOfWork sınıfta ben Parallel.ForEach kullanabilir ve yalnızca paralel Depo sınıfın birden çok örneği içine aramaya çalıştığınızda bu bana bir sorunu veriyor ilk iplik Şimdi ben muhtemelen imkansız ya da aptal bir şey soruyorum görebilirsiniz soruyu yazmayı bitirdiğinize HttpContext.Current
using (TransactionScope scope = new TransactionScope())
{
Parallel.ForEach(new List<IRepository>() { _repository1, _repository2 ... },
(repository) =>
{
repository.Commit();
});
scope.Complete();
}
bir değer bulur ... ama her neyse. .. bu yapılabilir mi? Birden fazla iç iş parçacığına bir istek/iş parçacığı kaydı yapılabilir mi?