c# - ASP.NET Core 1.1 无法发布应用

标签 c# asp.net .net asp.net-core .net-core

我正在尝试运行一个简单的 dotnet publish 命令,这样我就可以在我的 Linux 服务器上编译我的 Web 应用程序。它告诉我我的 project.json 丢失了。

在回答之前,您应该考虑以下最近发生的一些变化。如果我错了请纠正我,但我不需要 project.json 因为我的 Web 应用程序是不需要它的更高版本:

I'm currently running on ASP.NET Core 1.1 and .NET Core 1.1. As I am aware in November 2016 they depreciated project.json in favor of project.csproj so projects created in Visual Studio 2017 will no longer generate this file any longer.


ASP.NET Core 1.0 uses project.json
ASP.NET Core 1.1 uses project.csproj

我如何创建我的 Web 应用程序项目:

  • Visual Studio 2017 RC
  • ASP.NET Core 1.1(网络应用程序)
  • .NET 核心 1.1

I only displayed how I created my project because it shows people I don't need to dotnet migrate into 1.1 since the project never begun as a 1.0 project

我的项目在本地运行良好,它恢复,它发布运行。它可以完成 dotnet 命令应该完美完成的所有有趣的事情。

更具体的问题:
在具有最新 dotnet --version 的 linux 服务器上运行 dotnet publish 时出现错误提示 project.json 是必需的。为什么最新版本的 .NET Core (1.1) 需要 project.json,而它在 1.1 版中显然已贬值,应该寻找 .csproj

最佳答案

虽然我们正处于 project.json.csproj 取代的交叉期,但有两个版本的 SDK。还有一个基于 project.json 的 SDK v1.1 版本,您必须在您的 linux 服务器上安装它。

当工具进入 RTM 时,这种困惑应该很快就会消失(随着 VS2017 的发布大约一周的时间)。从那时起,所有内容都将基于 .csproj,并且完全弃用 project.json

关于c# - ASP.NET Core 1.1 无法发布应用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42473369/

相关文章:

c# - XAML Storyboard动画从外部视口(viewport)移动图像-Windows Phone 8

.net - 确定是否在没有System.Web的ASP.NET或WinForms/控制台中运行

asp.net - 使用 Rake 创建 IIS 网站

c# - GridView 中的超链接列

asp.net - 托管用户视频

.net - 如何从包含程序集的字节数组中获取程序集名称?

c# - 如何使用 Linq-To-SQL 进行更新?

c# - 序列化和反序列化 AjaxFileUploadEventArgs - 未定义无参数构造函数'

c# - 在编译时检测目标框架版本

c# - 如果我在 Codebehind 中创建一个文件,物理文件实际存在于何处?