【发布时间】:2018-11-04 21:25:24
【问题描述】:
我正在将一些现有代码从 .NET Framework 转换为 .NET Standard,以便在 .NET Core 应用程序中使用。图书馆项目已经转换并且正在建设中。它包含一些使用 EF Core 的数据库访问代码。由于此代码的使用者具有遗留性质,我想继续将 App.Config 或 Web.Config 文件与 Configuration Manager 一起使用。为此,我将 System.Configuration.ConfigurationManager NuGet 包添加到库项目中。
该库已通过使用 MSTest 的单元测试项目进行验证。该项目的目标是 .NET Framework 4.7.1,它可以使用 .NET Standard 2.0 库包。以 .NET Framework 为目标时,所有单元测试都通过了。
将单元测试项目更改为面向.NET Core 2.0 后,数据库代码不再能够找到存储在单元测试项目的App.Config 文件中的连接字符串。当我调试测试并检查 ConfigurationManager.ConnectionStrings 集合时,我只看到一个定义的似乎是可能来自 Machine.Config 文件的 SQL Express 连接。
有没有人通过 .NET Standard 库和 ConfigurationManager 兼容性库成功地从 .NET Core 应用访问 App.Config?
【问题讨论】:
标签: .net-core mstest .net-standard