2013-05-09 90 views
2

目前擁有一些使用.net 3.5和.net 4.0的項目。
決定將所有內容遷移到.NET 4.5。將項目轉換爲.Net 4.5(使用TPL)

所有項目都已經在VS2012(C#5.0),並使用異步等待關鍵字

在.NET 4.0的項目正在使用Microsoft.Bcl.Async
基於.NET 3.5的項目正在使用AsyncBridge所有項目.Net35和TaskParallelLibrary

的問題是:
- 沒有TaskEx類和.NET 4.5等擴展方法或我不知道這些

存在怎樣才能讓THI沒有重大的代碼改變?

+0

是不是'TaskEx'只是他們在異步預覽中使用的東西?我認爲在.NET 4.5中,這簡單地稱爲「Task」,方法應該包含在標準庫中。或者你缺少哪些其他擴展方法? – DeCaf 2013-05-09 16:59:11

回答

10

在.NET 4.5中,TaskEx方法已移入Task類。例如,您可以使用await Task.Run(...);而不是await TaskEx.Run(...);。你應該假設你自己的類的命名方案是健全的,能夠進行全局搜索和替換。

1

作爲您的遷移的一部分,您應該將您的TaskEx調用更改爲Task調用。

+0

我必須將TaskEx.Run更改爲Task.Factory.Start? (我不想這樣做) – 2013-05-09 17:01:32

+2

@ J.Lennon Nope,只是'Task.Run'。 – Servy 2013-05-09 17:02:00

+0

另外,'TaskEx.RunEx'變成了'Task.Run'。 – 2013-05-09 17:14:30