。NET 4.5或.NET 4.5.1是否包含TPL DataFlow?

问题描述 投票:3回答:2

我很困惑。我们最近将项目升级到了.NET 4.5.1。我们在服务器上安装了.NET 4.5.1。

我从GAC的System.Threading.Tasks.Dataflow处引用程序集C:\windows\Microsoft.Net\assembly\GAC_MSIL\System.Threading.Tasks.Dataflow\v4.0_4.5.9.0__b03f5f7f11d50a3a\System.Threading.Tasks.Dataflow.dll

[CopyLocal被设置为false,因为(我认为)它是Framework的一部分,因此无论部署该应用程序的位置都应已安装。

问题是,当在服务器上运行时,它说找不到该程序集。

我已阅读here,它是.NET Framework 4.5的is的一部分:

但是该库现在是.NET 4.5的内置库。

...我已经读过here不是

TPL数据流库(System.Threading.Tasks.Dataflow命名空间)未随.NET Framework 4.5一起分发

什么给了?看起来好像不是。它只是“目标包”的一部分吗?是我,还是这些就地升级的农业价值超过其应得的价值?!

task-parallel-library .net-4.5
2个回答
5
投票

我不确定为什么该页面说它是.NET 4.5的一部分-它仍然是带外NuGet版本,例如Entity Framework,MVC等。


1
投票

我知道这个问题已经很老了,但是我也想添加我的解决方案。我发现将以下两项添加到Visual Studio 2019安装中(运行Visual Studio安装程序>修改> .Net桌面开发),问题消失了,它能够从GAC中提取System.Threading.Tasks.Dataflow。

enter image description here

编辑:似乎还需要安装Visual Studio 2015。显然,它并不是VS 2015本身,而是它附带的某些东西。但是,对于我来说,有太多软件包很难找出哪个软件包。

Edit2:这并不是真正的最佳解决方案,更多的是权宜之计。 MS建议通过Nuget下载它。 https://docs.microsoft.com/en-us/dotnet/api/system.threading.tasks.dataflow?view=netcore-3.1

TPL数据流库(System.Threading.Tasks.Dataflow命名空间)未与.NET一起分发。要在Visual Studio中安装System.Threading.Tasks.Dataflow命名空间,请打开您的项目,从“项目”菜单中选择“管理NuGet包”。

© www.soinside.com 2019 - 2024. All rights reserved.