使用 Visual Studio 2017 的 .NET Core 解决方案上没有 project.json、global.json ... 等

Posted

技术标签:

【中文标题】使用 Visual Studio 2017 的 .NET Core 解决方案上没有 project.json、global.json ... 等【英文标题】:there is no project.json, global.json ... etc on .NET Core Solution with Visual Studio 2017 【发布时间】:2017-08-04 09:46:20 【问题描述】:

我做了一个项目

File -> New -> Project -> Visual C# -> Web -> ASP.NET Core Web Application     
(.NET Core) -> Empty -> OK

但是没有解决方案和src目录,也没有project.json和web.config等。

我参考了一本使用Visual Studio 2015 的书。这本书的例子有我告诉过的所有文件和目录。但我没有(我使用的是 VS 2017,因为我找不到 .NET Core for VS 2015)。

如何制作这些文件和目录? 我要手动制作这些吗?

【问题讨论】:

没有 project.JSON 了。但是应该有一个解决方案,因为您刚刚创建了一个 【参考方案1】:

.NET Core 正在以稍快的速度改变其内部结构(尽管它现在似乎已经安定下来),从而使那里的许多教程都过时了。 Since mid-2016,project.json 已被转储以支持“your-app-name”.csproj 文件。

如果您正在学习教程或书籍,那么对于您应该在 project.json 中编写的任何内容,您现在必须将其写入 csproj 文件,格式略有不同。

如果我在学习教程时必须弄乱 project.json,我会使用 this official migration guide。

【讨论】:

哦!我会记住的!而且,在我的解决方案中,也没有 *.csproj 文件......我找不到......你能帮我找到它吗?? @wallah 通过 Windows 资源管理器查看实际目录,而不是从 Visual Studio 中查看。【参考方案2】:

.NET Core(和其他团队)已决定放弃 project.json 并返回 MSBuild*.csproj

因此,.net 核心堆栈中不再存在 project.jsonglobal.jsonproject.json 的替代方案是 *.csprojglobal.json 的替代方案是 *.sln

Old csproj to new csproj: Visual Studio 2017 upgrade guidefor more info


更新:(基于 Stajs 评论)global.json 仍在堆栈中,但仅用于定义 SDK 版本。

【讨论】:

这是个坏消息 :( 更正:global.json 仍在堆栈中,但仅用于定义 SDK 版本。 @Stajs,升级到 CLI 工具的 v15.4.4 后,您可以在项目属性组中定义 SDK 版本:<PropertyGroup> <TargetFramework>netcoreapp2.0</TargetFramework> <RuntimeFrameworkVersion>2.0.3</RuntimeFrameworkVersion> </PropertyGroup> @Soren,我阅读the docs 的方式,这些属性都不是 SDK 版本。我很确定现在每个人都理解<TargetFramework><RuntimeFrameworkVersion> 是运行时,独立于 SDK,例如SDK 2.1.3 includes runtime 2.0.4。 SO 和 GitHub 讨论可能会有帮助。

以上是关于使用 Visual Studio 2017 的 .NET Core 解决方案上没有 project.json、global.json ... 等的主要内容,如果未能解决你的问题,请参考以下文章

如何设置 TFS 2013 以使用 Visual Studio 2013 或 Visual Studio 2017 构建

使用以前版本的 Visual Studio 的 devenv 从 VS2017 测试 Visual Studio 扩展不起作用

visual studio2017社区版如何空格操作?

在 Visual Studio 2015 中打开 Visual Studio 2017 项目

visual studio2017需要安装哪些组件

Visual Studio 2017工程在Visual Studio 2019打开碰到的问题