CaslteWindsor LifestyleScoped использует один и тот же экземпляр между запросами - PullRequest
0 голосов
/ 17 октября 2018

Проект в ASP.NET с использованием CastleWindsor для IoC

Я зарегистрировал класс, который наследует DBContext следующим образом

IoCcontainer.Register(Component.For<IMyContext>().ImplementedBy<MYContext>().LifestyleScoped())

Я делаю это в Startup.cs (ASP.net),В методе: ConfigureServices я также вызываю

IoCcontainer.BeginScope();

в том же методе.

Но когда я запускаю приложение и вызываю разные страницы или одну и ту же страницу дважды, я получаю один и тот же экземплярMyContext.Я знаю это, потому что в DbContect. [Entity] .Local;У меня есть предыдущие экземпляры сущностей запросов, и у меня их не должно быть.

Так куда мне звонить

IoCcontainer.BeginScope();

Чтобы уменьшить область действия до одного запроса?

IЯ пытался использовать Core DI

services.AddScoped<IMyContext, MyContext>()

Но я получаю разные экземпляры MyContext для каждого экземпляра класса Dao в одном и том же запросе.

Не против узнать, как настроить Core, чтобыодин и тот же экземпляр используется для всех экземпляров класса Дао

С уважением

GregJF

1 Ответ

0 голосов
/ 18 октября 2018

Решена проблема с DBContext для нескольких экземпляров, т. Е. Для класса dbContext требуется конструктор без параметров

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...