C# 如何在.net framework 4和.net标准1.5之间为Task.Delay切换上下文
我有一个正在迁移到asp.net core的项目,出现以下错误: 下面是我的project.json文件C# 如何在.net framework 4和.net标准1.5之间为Task.Delay切换上下文,c#,asp.net-core,task,C#,Asp.net Core,Task,我有一个正在迁移到asp.net core的项目,出现以下错误: 下面是我的project.json文件 { "version": "1.0.0-*", "dependencies": { "AutoMapper": "3.2.1", "Newtonsoft.Json": "8.0.3" }, "frameworks": { "netstandard1.5": { "imports": [ "dnxcore50",
{
"version": "1.0.0-*",
"dependencies": {
"AutoMapper": "3.2.1",
"Newtonsoft.Json": "8.0.3"
},
"frameworks": {
"netstandard1.5": {
"imports": [
"dnxcore50",
"portable-net40+sl5+win8+wp8+wpa81"
],
"dependencies": {
"NETStandard.Library": "1.5.0-rc2-24027",
"Microsoft.NETCore.Portable.Compatibility": "1.0.1-rc2-24027",
"System.Linq.Expressions": "4.0.11-rc2-24027"
}
},
"net40": {
"dependencies": {
"Microsoft.Bcl.Async": "1.0.168"
}
}
}
}
如何选择要使用Task.Delay-tat在.net标准1.5中可用,而忽略.net framework 4。我必须要有两种版本的吗 您可以使用预处理器指令执行以下操作:
您可以使用预处理器指令执行以下操作:
这似乎很管用,非常感谢。我想知道当.netcore从用户和社区获得更多的吸引力时,这种情况会发生多少。我觉得这是一个草率的解决问题的方法。@JeremyConterio:如果你想支持不受支持的.NET框架,通常情况下是这样的(.NET 4已经很老了,不再受积极支持,只有4.5.1或4.5.2及更高版本)。NET核心是基于System.Runtime(为WinRT引入的),它最初是在.NET 4.5中引入的,但从那时起,它有许多附加功能,直到现在,这似乎可以完成这项工作,非常感谢。我想知道当.netcore从用户和社区获得更多的吸引力时,这种情况会发生多少。我觉得这是一个草率的解决问题的方法。@JeremyConterio:如果你想支持不受支持的.NET框架,通常情况下是这样的(.NET 4已经很老了,不再受积极支持,只有4.5.1或4.5.2及更高版本)。NET核心是基于System.Runtime(为WinRT引入)的,它最初是在.NET 4.5中引入的,但从那时起它就有了许多新的功能
#if NETSTANDARD1_5
//do something that's just on netstandard1.5
#else
//do something that's not NET40
#endif