我试图在this tutorial之后发布.net核心控制台应用,但是当我发布时,我没有在PublishOutput文件夹中获得可执行文件(我得到了一个dll)。我还阅读了this article。
我的项目文件如下所示:
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>netcoreapp1.1</TargetFramework>
</PropertyGroup>
</Project>
看起来非常简单直接,但我无法弄清楚我做错了什么。
答案 0 :(得分:2)
我在Visual Studio提供的Hello World模板上尝试了这个。将您的csproj文件更改为以下内容:
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<!--<OutputType>Exe</OutputType>-->
<TargetFramework>netcoreapp1.1</TargetFramework>
<RuntimeIdentifiers>win10-x64</RuntimeIdentifiers>
</PropertyGroup>
</Project>
我认为OutputType
比RuntimeIdentifiers
属性更重要。
然后使用控制台,运行dotnet restore
,然后运行dotnet publish -c release -r win10-x64
这应该在\bin\Release\netcoreapp1.1\win10-x64\publish
在第一个链接上查看同一个人的{{3}}
答案 1 :(得分:2)
是的,这是一个奇怪的。我仍在努力解决这个问题。我所发现的是从CLI到VS 2017的功能似乎有所延迟:This SO article talks about that。
此外,关于输出类型的确切含义会产生混淆,因为它不是我们所想的。 This Github issue谈论它。
您使用的是哪个版本的VS2017?