【问题标题】:Convert projects to .Net 4.5 ( that uses TPL)将项目转换为 .Net 4.5(使用 TPL)
【发布时间】:2013-05-09 16:55:36
【问题描述】:

目前拥有几个使用 .net 3.5 和 .net 4.0 的项目。
决定全部迁移到 .NET 4.5。

所有项目都已经在 VS2012 (C# 5.0) 中并且所有项目都使用 async-await 关键字

在 .net 4.0 项目上正在使用 Microsoft.Bcl.Async
在 .net 3.5 项目上使用 AsyncBridge.Net35 和 TaskParallelLibrary

问题是:
- .net 4.5中没有TaskEx类和其他扩展方法或者我不知道这些的存在

如何在不对代码进行重大更改的情况下进行此更改?

【问题讨论】:

  • TaskEx 不只是他们在异步预览中使用的东西吗?我认为在 .NET 4.5 中这被简单地称为Task,并且这些方法应该包含在标准库中。或者您还特别缺少哪些其他扩展方法?

标签: c# .net async-await base-class-library


【解决方案1】:

在 .NET 4.5 中,TaskEx 方法已移至 Task 类中。例如,您使用await Task.Run(...); 而不是await TaskEx.Run(...);。假设您自己的类的命名方案是合理的,您应该能够进行全局搜索和替换。

【讨论】:

    【解决方案2】:

    作为迁移的一部分,您应该将 TaskEx 调用更改为 Task 调用。

    【讨论】:

    • 我必须将 TaskEx.Run 更改为 Task.Factory.Start? (我不想这样做)
    • @J.Lennon 不,只是Task.Run
    • 另外,TaskEx.RunEx 变成了 Task.Run
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-08-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-02-10
    • 1970-01-01
    相关资源
    最近更新 更多