У меня проблема с обслуживанием без сохранения состояния, в котором есть 2 контейнера AutoFac
В моем контейнере есть экземпляр PriceService, созданный метод Main для Program.cs
В моем файле Startup.cs создается второй контейнер (это неизбежно, поскольку для настройки AutoFac для Web API требуется другая логика)
Это вызывает у меня проблему, потому что когда я иду к решению IPriceService, я получаю сервис, который не содержит данных, потому что при запуске
создается новый экземпляр
Я видел, как объединить 2 контейнера, но как мне получить контейнер, созданный в моем методе Program.cs Main?
Если я смогу получить его, я планирую создать новый контейнер, который не включает IPriceService, а затем добавить мой PriceService из контейнера ServiceFabric в мой контейнер, который будет использоваться стороной веб-API
Кто-нибудь пробовал что-нибудь подобное?
Дополнительная информация
Мой контейнер всегда создавался в методе Main программы.cs
У меня не может быть 1 контейнера, потому что для использования AutoFac для MVC / контроллеров необходимо интегрировать сервисы, которые доступны только в классах запуска
Класс запуска не вызывается в нужное время, поэтому нет никакой возможности получить эту дополнительную информацию в мой основной контейнер
Дополнительное примечание
Я думаю, что реальная проблема здесь может быть немного другой, я вызываю InstancePerCall при регистрации контроллеров. Это, в свою очередь, создает новый экземпляр моего сервиса, а не использует существующий. Так что, возможно, мой вопрос должен быть, как я могу избежать этого? Могу ли я использовать SingleInstance для контроллеров?