【发布时间】:2019-10-22 14:44:20
【问题描述】:
我有一个带有配置文件的控制台应用程序。当我使用 .proj 中的新 PublishSingleFile 设置发布时,它会将应用程序作为一个文件发布(很好),但它也会将 appsettings 添加到该 .exe 中。
这意味着此时它不是真正的配置文件,而是文件硬编码值。
如何使用单独的配置文件发布?
当前 .proj 设置
<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>netcoreapp3.0</TargetFramework>
<PublishReadyToRun>true</PublishReadyToRun>
<PublishSingleFile>true</PublishSingleFile>
<PublishTrimmed>true</PublishTrimmed>
<RuntimeIdentifier>win-x64</RuntimeIdentifier>
</PropertyGroup>
【问题讨论】:
-
您可以拥有针对特定环境(如开发、生产等)的应用设置,这是您的问题吗?但这是在 .NetCore 环境中。
-
我将原始版本保存在父文件夹中,然后在每次发布时将其放到正确的文件夹中。在 Windows 上,我注意到您可以引用父文件夹,但它在 Linux 上不起作用。
-
@Rakesh 不抱歉,我的意思是当我使用 dotnet publish 发布时,我得到了 .exe,但 appsettings.json 在 exe 中而不是在它旁边,因此无法编辑。
标签: c# .net-core console-application