Добавление службы WCF IPC в существующее приложение, которое обращается к базе данных SQLite через EntityFrameworkCore - PullRequest
0 голосов
/ 04 декабря 2018

Мне нужна помощь.

У меня есть приложение Mono для Mac, разработанное в VS для Mac, с использованием последних обновлений VS для Mac, которые включают Mono Framework MDK 5.16.0.221.,Приложение ориентировано на .NET Framework 4.7.1

Приложение обращается к базе данных SQLite через EF Core, все последние пакеты, проблема в том, что все тормозит, если я пытаюсь добавить службу WCF в приложение.Видимо, порядок между запуском службы и инициализацией контекста БД приводит к сбою приложения.

Я создал этот пример проекта , который включает тестовый пример для проблемы.

Работает нормально, как есть, но если инициализация IPC выполняется до контекста БД (перемещение этой строки * на 1012 * после этой ), ошибка может быть воспроизведена.

Редактировать:

Обнаруженная мною проблема заключается в порядке между WCF ServiceHost, и инициализация EF DbContext влияет на поведение приложения.

Инициализация ServiceHost сначала:

serviceHost = new ServiceHost(singletonInstance);

...

serviceHost.AddServiceEndpoint(typeof(S), new NetTcpBinding(), serviceAddress);
serviceHost.Open();

, а затем DbContext

var databaseProvider = new DatabaseProvider(DB_FILE);
DatabaseContext databaseContext = databaseProvider.GetConnection();

Результатом становится исключение типа System.NotSupportedException : Specified method is not supported. при использованииdatabaseContext для доступа к информации из БД.

Спасибо

...