gpt4 book ai didi

winforms - 如何排除 App.config 被捆绑在 .net core 3 单文件自包含 WinForms 应用程序中的 .exe 中?

转载 作者:行者123 更新时间:2023-12-03 23:35:35 29 4
gpt4 key购买 nike

我有一个 Winforms .NET Core 3 应用程序,我想将其发布为独立的单文件部署

这是相关的.csproj文件

<Project Sdk="Microsoft.NET.Sdk.WindowsDesktop">

<PropertyGroup>
<OutputType>WinExe</OutputType>
<TargetFramework>netcoreapp3.0</TargetFramework>
<UseWindowsForms>true</UseWindowsForms>
<RuntimeIdentifier>win-x64</RuntimeIdentifier>
<PublishSingleFile>true</PublishSingleFile>
</PropertyGroup>

<ItemGroup>
<!--PackageReferences-->
</ItemGroup>

<ItemGroup>
<!--ProjectReferences-->
</ItemGroup>

</Project>

我正在使用 <RuntimeIdentifier>win-x64</RuntimeIdentifier>所以它为 Windows x64 和 <PublishSingleFile>true</PublishSingleFile> 生成一个自包含部署所以一切都嵌入在 .exe 中文件。

通过运行发布时:
dotnet publish -c Release

我收到了 .exe.pdb文件位于 bin\Release\netcoreapp3.0\win-x64\publish
- MyApp.exe
- MyApp.pdb

我需要在 .csproj 中更改什么文件,所以我得到了 MyApp.dll.configMyApp.exe.config .exe 旁边的正确者为准所以应用程序实际上是从它读取配置而不是它的嵌入式 App.Config ?

我试过添加这个
<ItemGroup>
<Content Update="*.config">
<CopyToPublishDirectory>PreserveNewest</CopyToPublishDirectory>
<ExcludeFromSingleFile>true</ExcludeFromSingleFile>
</Content>
</ItemGroup>

正如此链接所暗示的 Single-file Publish - Build System Interface但它仍然只生成两个文件。

最佳答案

你的问题帮我解决了这个问题,谢谢。
希望这也适用于您。

我的 .csproj 看起来像

  <PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>netcoreapp3.0</TargetFramework>
<PublishReadyToRun>true</PublishReadyToRun>
<PublishSingleFile>true</PublishSingleFile>
<PublishTrimmed>true</PublishTrimmed>
<RuntimeIdentifier>win-x64</RuntimeIdentifier>
</PropertyGroup>

<ItemGroup>
<Content Include="*.json">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
<ExcludeFromSingleFile>true</ExcludeFromSingleFile>
</Content>
</ItemGroup>

刚刚用 .config 文件做了一些进一步的测试
<ItemGroup>
<None Update="*.config">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
<ExcludeFromSingleFile>true</ExcludeFromSingleFile>
</None>
</ItemGroup>

这对我有用,上面的其他配置。

关于winforms - 如何排除 App.config 被捆绑在 .net core 3 单文件自包含 WinForms 应用程序中的 .exe 中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58261911/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com