【发布时间】:2018-02-19 00:34:12
【问题描述】:
我正在将应用程序移植到依赖.settings 文件的 .NET 核心。不幸的是,我找不到从 .NET 核心读取它的方法。通常,将以下行添加到 .csproj 会生成一个 TestSettings 类,它可以让我读取设置。
<ItemGroup>
<None Include="TestSettings.settings">
<Generator>SettingsSingleFileGenerator</Generator>
</None>
</ItemGroup>
不幸的是,这似乎不再起作用。我什至无法验证SettingsSingleFileGenerator 是否运行。这个GitHub issue 表明这是新的.csproj 格式的错误,但没有人提供替代方案。
在 .NET core 中读取.settings 文件的正确方法是什么?
【问题讨论】:
-
即使
SettingsSingleFileGenerator的特定于 Visual Studio 的问题得到解决,我认为“设置”系统无论如何都不会与 .NET Core 一起使用,因为它们依赖于System.Configuration。 (我还没有验证是这种情况) -
你能写一个快速的 XML 解析器来读取
.settings文件和运行时app.config文件来提取值吗?这可能比尝试让 VS 中的“设置”功能发挥作用更快、更容易。 -
@Dai - 我绝对可以编写一个 XML 解析器,或者使用现成的解析器来做到这一点,但由于它是一种标准格式,我想使用支持的库来阅读它。我真的不想涉足为 Microsoft 维护设置文件解析器的业务。
-
此外,从 .NET Core 2.0(我正在使用)开始,
System.Configuration可用。