使用配置文件发布.NetCore应用

时间:2018-07-20 18:01:32

标签: c# msbuild .net-core

我有一个简单的解决方案,其中有一个文件夹和一个带有Hello World .NET Core 2.0控制台应用程序的csproj。

我为独立的win-x64版本创建了一个发布配置文件。

当我在VS 2017中发布此内容时,一切都变甜了。

发布配置文件相对于Properties\PublishProfiles\FolderProfile.pubxml中的csproj

但是我无法使用msbuild.exedotnet.exe都无法在命令行上发布它。

执行publish命令并实际上创建一个publish文件夹。它既不在配置文件中配置的位置,也不包含实际的exe(与bin文件夹中相同的内置dll)。

标准互联网搜索告诉我这样做:

dotnet publish /p:Configuration=Release /p:PublishProfile=FolderProfile ConsoleApp3.csproj

有时人们指定扩展名.pubxml。试过了。

我还尝试了msbuild.exe的变体:

msbuild.exe /t:Publish /p:Configuration=Release /p:PublishProfile=FolderProfile ConsoleApp3.csproj

结果相同。

2 个答案:

答案 0 :(得分:0)

我从未真正找到过使用个人资料发布的方法。但是,我设法创建了一个命令行,生成了我想要的东西:

dotnet.exe publish -c Release -r win-x64 -o publish --self-contained true MyProject.csproj

答案 1 :(得分:0)

如果您希望发布到特定文件夹,则可以使用:

dotnet publish --framework netcoreapp2.1 --output "c:\PUBLISHED\ProofOfConcept" --configuration Debug

我个人更喜欢创建一个包含以下代码的批处理文件(.bat),然后双击它:

TaskKill /F /IM dotnet.exe
iisreset /stop
cd C:\MyProjects\ProofOfConcept\ProofOfConcept
dotnet publish --framework netcoreapp2.1 --output "c:\PUBLISHED\ProofOfConcept" --configuration Debug
iisreset /start
pause