1

我正在寻求帮助。

我有一个用于 Mac 的 Mono 应用程序,在 VS for Mac 中开发,使用 VS for Mac 中的当前最新更新,其中包括 Mono Framework MDK 5.16.0.221。该应用程序面向 .NET Framework 4.7.1

该应用程序通过 EF Core 访问 SQLite DB,所有最新包,问题是如果我尝试向应用程序添加 WCF 服务,事情就会停止。显然,服务启动和数据库上下文初始化之间的顺序使应用程序崩溃。

我已经创建了这个示例项目,其中包括该问题的测试用例。

它可以正常工作,但是如果 IPC 初始化是在 DB 上下文之前完成的(将这一行移到这一之后),则可以重现故障。

编辑:

我检测到的问题是 WCFServiceHost启动之间的顺序,而 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访问数据库中的信息时,会导致异常,如。

谢谢

4

0 回答 0