используя ту же реализацию с разными стилями жизни Виндзор - PullRequest
0 голосов
/ 24 мая 2011

У меня есть такой класс:

public FooRepo : IFooRepo
{
   public FooRepo(IDbContextFactory factory)
   {
      context = factory.GetContext();
   }
}

В моем приложении я регистрирую все с помощью LifeStyle.PerWebRequest, но теперь мне нужно вызвать один метод, который использует этот IFooRepo вот так (потому что он собираетсязаймет около часа):

{
 ...
    ThreadPool.QueueUserWorkItem(s => RequestReport(number));
 ...
}
private void RequestReport(int number)
{
// IFooRepo needed here
}

проблема в том, что мне нужно это IFooRepo с образом жизни PerWebRequest большую часть времени, и мне нужно было здесь, в теме, также остаться в живых, также у него есть зависимостьIDbContextFactory что я не знаю, если мне нужно зарегистрировать это также по-другому

1 Ответ

2 голосов
/ 24 мая 2011

, а затем зарегистрируйте свой FooRepo дважды и переопределите службу настройки для тех, кто использует ThreadPool для использования другого компонента.Легко.

...