微软之前为了让.NET Core和ASP.NET Core能够支持Windows Visual Studio之外的开发平台,创建了基于project.json格式的项目系统。不过可惜,这种格式与之前的.csproj/MSBuild无法兼容。来自微软的Rich Lander近期宣布,.NET Core Tools将在最新的alpha版中迁移到MSBuild格式。
不过现今的.NET Core开发者已经在使用project.json格式,为了这些旧项目,微软提供了一个迁移工具(通过调用dotnet migrate命令),它可以把project.json转成MSBuild格式。
修改后的格式有很多好处:
- 项目之间现在可以相互引用——现有的.NET标准项目(.NET Framework、Xamarin或UWP)和.NET Core之间可以相互引用
- 项目引用和NuGet引用使用相同的csproj格式——通过NuGet添加的包引用会出现在csproj文件里
- 在项目打开的同时可以对csproj文件进行修改——微软可能不认为手动修改csproj文件这种情况会经常发生,不过在Visual Studio里通过IntelliSense的支持来修改csproj文件是有可能的
在VS2017RC(或更早版本)中打开project.json项目时,会弹出一个把项目单向地转成.csproj项目的确认对话框。要注意,这个转换是单向的,所以在确认之前要确保已经做好了备份。那些使用.NET Core CLI Tools的开发人员也会收到迁移到MSBuild的通知。Lander说,这次发布的是一个alpha版本,因为它确实还不能作为正式版发布。现在可以下载到这些工具的各个平台的版本(Windows、macOS和Linux)。
将ASP.NET Core应用程序部署至生产环境中(CentOS7) http://www.linuxidc.com/Linux/2016-11/137010.htm
ASP.NET Core负载均衡集群搭建(CentOS7+Nginx+Supervisor+Kestrel) http://www.linuxidc.com/Linux/2016-11/136997.htm
ASP.NET Core Linux下为 dotnet 创建守护进程(必备知识) http://www.linuxidc.com/Linux/2016-08/133943.htm
查看英文原文:.NET Core Tools Switch to MSBuild
本文永久更新链接地址:http://www.linuxidc.com/Linux/2016-12/138078.htm
