gpt4 book ai didi

c# - dotnet 发布时如何更改 dll 名称?

转载 作者:行者123 更新时间:2023-12-04 17:23:38 26 4
gpt4 key购买 nike

除了最后一行之外,我所有的 .net 核心 dockerfile 都是 99% 相同的:ENTRYPOINT ["dotnet", "<APP NAME HERE>.dll"]我似乎很愚蠢,因为否则它们可能都是相同的
有没有办法用 dotnet publish -c Release -o out 更改 dll 名称命令?我可以这样做而不必修改 csproj 文件或任何东西吗?

最佳答案

您可以使用此命令来执行构建并重命名程序集:

dotnet msbuild -r -p:Configuration=Release;AssemblyName=foo
在 Linux/macOS 上,您必须在命令周围添加引号,如下所示:
dotnet msbuild -r '-p:Configuration=Release;AssemblyName=foo'
但是,由于 global property,可能会出现意想不到的副作用。正在设置。您应该从 2019 年 9 月开始阅读这个 Unresolved 问题,因为它直接回答了您关于 Docker 和重命名输出的问题: https://github.com/dotnet/msbuild/issues/4696
另外,我知道您想避免编辑 .csproj 文件,但如果您不知道,您可以添加 AssemblyName属性并以这种方式设置输出名称。
如:
  <PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>netcoreapp3.1</TargetFramework>
<AssemblyName>foo</AssemblyName>
</PropertyGroup>
这将创建 foo.dll (以及其他文件,例如 .pdb.deps.json 等)

关于c# - dotnet 发布时如何更改 dll 名称?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64761685/

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