Visual Studio 对于 mac project.json

Visual Studio for mac project.json

当我使用Visual Studio 为Mac 创建一个带有.Net core 1.1 的web 项目时,我的项目中没有project.json。我创建的时候有没有错误 this project?

project.json 已弃用,并且在 VS 2015 中从未在预览版 .NET Core 工具之外得到支持。新工具使用 csproj 文件,可用于 VS 2017 和 VS for Mac(以及其他人,例如 VSCode、Rider、……)。

Project.json 从未在生产环境中发布。在 .NET Core 发布之前,它被一个新的 vastly simplified MSBuild project format 取代。新格式的工作原理与 project.json 格式非常相似 - 它支持 globbing、包引用并编译所有 *.cs* files found in a folder. You don't need to define dependent packages in the project file any more, you can specify *one* root package and all dependencies will be added when you executedotnet restore`

.NET Core 允许您向 .NET CLI 添加显示为命令的命令行开关。 dotnet watch 执行 dotnet-watch 可执行文件。 dotnet ef 搜索并执行 dotnet-ef 可执行文件。

您必须向 MSBuild 项目添加一个选项,该选项首先使用 <DotNetCliToolReference> 元素安装该工具。之后,dotnet restore 将像安装任何其他软件包一样安装该工具。

这在 .NET Core Command Line Tools for EF Core 中有描述。

MSBuild 项目文件应如下所示:

<Project Sdk="Microsoft.NET.Sdk">
  <PropertyGroup>
    <OutputType>Exe</OutputType>
    <TargetFramework>netcoreapp2.0</TargetFramework>
  </PropertyGroup>
  <ItemGroup>
    <PackageReference Include="Microsoft.EntityFrameworkCore.Design" Version="2.0.0" PrivateAssets="All" />
  </ItemGroup>
  <ItemGroup>
    <DotNetCliToolReference Include="Microsoft.EntityFrameworkCore.Tools.DotNet" Version="2.0.0" />
  </ItemGroup>
</Project>

此文件足以构建您的项目并从命令行执行ef命令,因为默认情况下将编译所有*.cs文件