[C#] VS2017中在某些目录下使用不了 .NET Core 2.0 问题的处理办法
2017-09-15 23:05
531 查看
作者: zyl910
而且此时项目属性里,“目标框架”下拉框的当前值变为空。该下拉框中只能选 1.0、1.1 这2个版本。
曾经怀疑是不是 .NET Core 2.0 SDK文件被破坏了。但发现其他目录下的 .NET Core 2.0 项目打开正常。
global.json 是 VS2015 + .NET Core 1.0 SDK 时代的配置文件,VS2017中已经不用该文件了。且该文件位于上上级目录,本来以为它不会影响VS2017项目,结果还是被影响了。
这里有2个办法——
将解决方案中的 .NET Core 1.0 的 sln、global.json 抽离出去。移到某个子目录去。然后在该子目录另外新建专用的解决方案,注意修改project.json 来引用上级兄弟目录中的文件。详见 《[C#] .NET Core项目修改project.json来引用其他目录下的源码等文件的办法 & 解决多框架时 project.json 与 app.config冲突的问题》。
干脆不用 .NET Core 1.0。全部升级为 VS2017 + .NET Core 2.0 。
一、缘由
最近遇到了一个奇怪的问题——明明已经在VS2017里装好了 .NET Core 2.0 SDK,且测试过新建一个 .NET Core 2.0控制台项目能成功使用。但是在项目目录中实际使用新建.NET Core 2.0控制台项目时,会遇到不支持 .NET Core 2.0 的错误提示。Severity Code Description Project File Line Suppression State Error The current .NET SDK does not support targeting .NET Core 2.0. Either target .NET Core 1.1 or lower, or use a version of the .NET SDK that supports .NET Core 2.0. ConsoleExample.netcore20 C:\VS2017\MSBuild\Sdks\Microsoft.NET.Sdk\build\Microsoft.NET.TargetFrameworkInference.targets 112
而且此时项目属性里,“目标框架”下拉框的当前值变为空。该下拉框中只能选 1.0、1.1 这2个版本。
曾经怀疑是不是 .NET Core 2.0 SDK文件被破坏了。但发现其他目录下的 .NET Core 2.0 项目打开正常。
二、解决
找来找去,发现上上级目录中有一个 global.json。于是猜测是该文件的问题,尝试将该文件删除到回收站。果然,删掉该文件后,VS2017就能正常使用 .NET Core 2.0 了。global.json 是 VS2015 + .NET Core 1.0 SDK 时代的配置文件,VS2017中已经不用该文件了。且该文件位于上上级目录,本来以为它不会影响VS2017项目,结果还是被影响了。
三、处理 global.json
但是删除 global.json后,VS2015中的 .NET Core 1.0 项目会报错——The following error occurred attempting to run the project model server process (2.0.0). Unable to start the process. No executable found matching command "dotnet-projectmodel-server" The project model server process provides intellisense, build, and reference information to Visual Studio and without it your experience will be very limited. Please try closing and reopening Visual Studio to see if that corrects the problem. Alternatively, check that the .NET Core SDK is properly installed."
这里有2个办法——
将解决方案中的 .NET Core 1.0 的 sln、global.json 抽离出去。移到某个子目录去。然后在该子目录另外新建专用的解决方案,注意修改project.json 来引用上级兄弟目录中的文件。详见 《[C#] .NET Core项目修改project.json来引用其他目录下的源码等文件的办法 & 解决多框架时 project.json 与 app.config冲突的问题》。
干脆不用 .NET Core 1.0。全部升级为 VS2017 + .NET Core 2.0 。
参考文献
zyl910《[C#] .NET Core项目修改project.json来引用其他目录下的源码等文件的办法 & 解决多框架时 project.json 与 app.config冲突的问题》. http://www.cnblogs.com/zyl910/p/project_json_include.html相关文章推荐
- [C#] .NET Core项目修改project.json来引用其他目录下的源码等文件的办法 & 解决多框架时 project.json 与 app.config冲突的问题
- 基于.net compact framework 2.0,C#开发windows mobile 5.0程序遇到的一些问题及解决办法
- 使用C#处理WebBrowser控件中的跨域问题
- 使用 framest 处理 session 丢失,过期的问题解决办法
- c# 链表(LinkedList)使用中的问题(.net framework 2.0)
- asp.net c#的传参中经常使用到中文参数的处理,下面的函数可以解决中文参数的问题
- nullable数据类型和c#2.0运算符“??”,数据库可能为空时候的一种处理办法
- 关于NFS客户端挂载成功但不显示NFS服务端挂载目录下的文件的处理办法及问题还原。
- IIS6中给Framework2,。0站点的虚拟目录(2.0版本)下发布Web API项目(4.0版本)问题处理
- lamp使用php处理上传文件,调用move_uploaded_file函数遇到目录写权限问题及解决过程
- 在使用ILSpy对c# dll进行反编译时遇到的问题及处理方式
- 使用ADSI开发NT目录服务会出现的一些问题及解决办法
- socket.io使用netscaler作为代理服务器进行转发时可能出现的问题及其处理办法
- 使用C#处理WebBrowser控件中的跨域问题
- C#ADO连接修改Paradox表时“操作必须使用一个可更新的查询”错误的处理办法
- 使用网络目录映射虚拟目录出现 500.19 权限不足问题的一个解决办法
- C# .Net Framework4.5中配置和使用managedCUDA及常见问题解决办法
- 在ashx一般处理程序文件中不能使用session和request的问题解决办法
- 使用C#处理WebBrowser控件中的跨域问题
- 在ashx一般处理程序文件中不能使用session和request的问题解决办法