VS2010 + C#4.0使用 async + await
方法一: 安装官方出的Microsoft.Bcl.Async包
最新发布日期为 2014/4/12,版本1.0.168
(不支持VS2010)
1、解决方案-右键-管理解决方案的NuGet程序包

2、搜索Microsoft.Bcl.Async,点击安装

3、等待下载完成


4、点击我接受

5、发现引用下多出7个引用

方法二、
2011年微软出了async的预览版,当时使用async的方式如下
1、准备好Visual Studio 2010 + SP1,无论什么版本。
VS2010 SP1升级补丁: Microsoft Visual Studio Service Pack 官方离线下载版(ISO).48G地址:
http://download.microsoft.com/download/E/B/A/EBA0A152-F426-47E6-9E3F-EFB686E3CA20/VS2010SP1dvd1.iso
WebClient下的DownloadStringTaskAsync方法,则是在%MyDocument%\Microsoft Visual Studio Async CTP\Samples\AsyncCtpLibrary.dll下定义的扩展方法。
则需要在注册表下,hkey_current_user\software\microsoft\installer\products\

在Products下找到一个ProductName叫 Microsoft Visual Studio 2010 Service Pack 1的项,并删除掉项9AC087DE786021C34B9333962F4249F1
再次打开安装程序就正常了
安装完SP1后,打开弹框报错:未能正确加载 “Microsoft.Data.Entity.Design.BootstrapPackage.BootstrapPackage,”

reg query HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\VisualStudio\10.0\AutoLoadPackages\{adfc4e66--11d1-9f4e-00a0c911004f} /v {7A4E8D96-5D5B--9FAB-D6DCC56F47FB}
reg query HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\VisualStudio\10.0\AutoLoadPackages\{93694fa0--11d1-9f4e-00a0c911004f} /v {7A4E8D96-5D5B--9FAB-D6DCC56F47FB}
reg query HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\VisualStudio\10.0\Packages\{7A4E8D96-5D5B--9FAB-D6DCC56F47FB} /s
reg query HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VisualStudio\10.0\AutoLoadPackages\{adfc4e66--11d1-9f4e-00a0c911004f} /v {7A4E8D96-5D5B--9FAB-D6DCC56F47FB}
reg query HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VisualStudio\10.0\AutoLoadPackages\{93694fa0--11d1-9f4e-00a0c911004f} /v {7A4E8D96-5D5B--9FAB-D6DCC56F47FB}
reg query HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VisualStudio\10.0\Packages\{7A4E8D96-5D5B--9FAB-D6DCC56F47FB} /s
reg query HKEY_CURRENT_USER\SOFTWARE\Microsoft\VisualStudio\.0_Config\AutoLoadPackages\{adfc4e66--11d1-9f4e-00a0c911004f} /v {7A4E8D96-5D5B--9FAB-D6DCC56F47FB}
reg query delete HKEY_CURRENT_USER\SOFTWARE\Microsoft\VisualStudio\.0_Config\AutoLoadPackages\{93694fa0--11d1-9f4e-00a0c911004f} /v {7A4E8D96-5D5B--9FAB-D6DCC56F47FB}
reg query HKEY_CURRENT_USER\SOFTWARE\Microsoft\VisualStudio\.0_Config\Packages\{7A4E8D96-5D5B--9FAB-D6DCC56F47FB} /s
reg delete HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\VisualStudio\10.0\AutoLoadPackages\{adfc4e66--11d1-9f4e-00a0c911004f} /v {7A4E8D96-5D5B--9FAB-D6DCC56F47FB} /f
reg delete HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\VisualStudio\10.0\AutoLoadPackages\{93694fa0--11d1-9f4e-00a0c911004f} /v {7A4E8D96-5D5B--9FAB-D6DCC56F47FB} /f
reg delete HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\VisualStudio\10.0\Packages\{7A4E8D96-5D5B--9FAB-D6DCC56F47FB} /va /f
reg delete HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VisualStudio\10.0\AutoLoadPackages\{adfc4e66--11d1-9f4e-00a0c911004f} /v {7A4E8D96-5D5B--9FAB-D6DCC56F47FB} /f
reg delete HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VisualStudio\10.0\AutoLoadPackages\{93694fa0--11d1-9f4e-00a0c911004f} /v {7A4E8D96-5D5B--9FAB-D6DCC56F47FB} /f
reg delete HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VisualStudio\10.0\Packages\{7A4E8D96-5D5B--9FAB-D6DCC56F47FB} /va /f
reg delete HKEY_CURRENT_USER\SOFTWARE\Microsoft\VisualStudio\.0_Config\AutoLoadPackages\{adfc4e66--11d1-9f4e-00a0c911004f} /v {7A4E8D96-5D5B--9FAB-D6DCC56F47FB} /f
reg delete HKEY_CURRENT_USER\SOFTWARE\Microsoft\VisualStudio\.0_Config\AutoLoadPackages\{93694fa0--11d1-9f4e-00a0c911004f} /v {7A4E8D96-5D5B--9FAB-D6DCC56F47FB} /f
reg delete HKEY_CURRENT_USER\SOFTWARE\Microsoft\VisualStudio\.0_Config\Packages\{7A4E8D96-5D5B--9FAB-D6DCC56F47FB} /va /f
reg query HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\VisualStudio\10.0\AutoLoadPackages\{adfc4e66--11d1-9f4e-00a0c911004f} /v {7A4E8D96-5D5B--9FAB-D6DCC56F47FB}
reg query HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\VisualStudio\10.0\AutoLoadPackages\{93694fa0--11d1-9f4e-00a0c911004f} /v {7A4E8D96-5D5B--9FAB-D6DCC56F47FB}
reg query HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\VisualStudio\10.0\Packages\{7A4E8D96-5D5B--9FAB-D6DCC56F47FB} /s
reg query HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VisualStudio\10.0\AutoLoadPackages\{adfc4e66--11d1-9f4e-00a0c911004f} /v {7A4E8D96-5D5B--9FAB-D6DCC56F47FB}
reg query HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VisualStudio\10.0\AutoLoadPackages\{93694fa0--11d1-9f4e-00a0c911004f} /v {7A4E8D96-5D5B--9FAB-D6DCC56F47FB}
reg query HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VisualStudio\10.0\Packages\{7A4E8D96-5D5B--9FAB-D6DCC56F47FB} /s
reg query HKEY_CURRENT_USER\SOFTWARE\Microsoft\VisualStudio\.0_Config\AutoLoadPackages\{adfc4e66--11d1-9f4e-00a0c911004f} /v {7A4E8D96-5D5B--9FAB-D6DCC56F47FB}
reg query delete HKEY_CURRENT_USER\SOFTWARE\Microsoft\VisualStudio\.0_Config\AutoLoadPackages\{93694fa0--11d1-9f4e-00a0c911004f} /v {7A4E8D96-5D5B--9FAB-D6DCC56F47FB}
reg query HKEY_CURRENT_USER\SOFTWARE\Microsoft\VisualStudio\.0_Config\Packages\{7A4E8D96-5D5B--9FAB-D6DCC56F47FB} /s
将上述代码复制到cmd下即可~如果一般不行来两遍。
VS2010 + C#4.0使用 async + await的更多相关文章
- nodejs7.0 试用 async await
nodejs 7.0.0 已经支持使用 --harmony-async-await 选项来开启async 和 await功能. 在我看来,yield 和 async-await 都是在特定范围内实现了 ...
- [C#] .NET4.0中使用4.5中的 async/await 功能实现异
好东西需要分享 原文出自:http://www.itnose.net/detail/6091186.html 在.NET Framework 4.5中添加了新的异步操作库,但是在.NET Framew ...
- 小心C# 5.0 中的await and async模式造成的死锁
平时在使用C# 5.0中的await and async关键字的时候总是没注意,直到今天在调试一个ASP.NET项目时,发现在调用一个声明为async的方法后,程序老是莫名其妙的被卡住,就算声明为as ...
- [C#] .NET4.0中使用4.5中的 async/await 功能实现异步
在.NET Framework 4.5中添加了新的异步操作库,但是在.NET Framework 4.0中却无法使用.这时不免面临着抉择,到底是升级整个解决方案还是不使用呢? 如果你的软件还没发布出去 ...
- .NET4.0中使用4.5中的 async/await 功能实现异步
在.NET Framework 4.5中添加了新的异步操作库,但是在.NET Framework 4.0中却无法使用.这时不免面临着抉择,到底是升级整个解决方案还是不使用呢? 如果你的软件还没发布出去 ...
- C#Framework4.0支持异步async/await语法
由于用户使用的是XP系统,但是程序里异步都是通过async/await代码来实现的,然而async/await需要Framework4.5版本才可以,而XP系统最高只能支持到Framework4.0, ...
- Python的异步编程[0] -> 协程[0] -> 协程和 async / await
协程 / Coroutine 目录 生产者消费者模型 从生成器到异步协程– async/await 协程是在一个线程执行过程中可以在一个子程序的预定或者随机位置中断,然后转而执行别的子程序,在适当的时 ...
- tornado5.0+async+await
不使用数据库的情况下实现异步 使用gen.sleep()模拟阻塞 使用gen.sleep(time) 而不是time.sleep(),time.sleep()阻塞整个进程,看gen.sleep()源码 ...
- [转]小心C# 5.0 中的await and async模式造成的死锁
原文链接 https://www.cnblogs.com/OpenCoder/p/4434574.html 内容 UI Example Consider the example below. A bu ...
随机推荐
- sql2005 和sql2008 同时安装
Hkey_local_machine\Software\Wow6432Node\Microsoft\Microsoft SQL Server\90\Tools\ShellSEM 中的ShellSEM重 ...
- [转]Docker容器内不能联网的6种解决方案
注: 下面的方法是在容器内能ping通公网IP的解决方案,如果连公网IP都ping不通,那主机可能也上不了网(尝试ping 8.8.8.8) 1.使用--net:host选项 sudo docker ...
- Android数据储存之SharedPreferences
Android中SharedPreferences通常与Editor连用 接口SharedPreferences常用方法: boolean contains(String str):判断SharedP ...
- 基里巴斯(path)
基里巴斯(path) 题目描述 最近,帕特里克沉迷于世界地图上的太平洋地区.他发现了一个名字奇异的岛国:基里巴斯共和国,简称基里巴斯,是一个太平洋岛国. 其由33个岛屿组成. "可惜它快被淹 ...
- Fabric和Sawtooth技术分析(上)
https://mp.weixin.qq.com/s?__biz=MjM5MDAxMTE0MA==&mid=2652049866&idx=1&sn=5b4aea961f3d64 ...
- Visual Studio调试技巧 -- Attach to Process
本文系作者原创,但可随意转载.另:图中使用的IDE为Visual Studio 2013 RC 英文版. 一般写完代码时,我们通常会启动调试运行一下看看是否正确,启动运行的方式无非是F5-- Star ...
- 清理雪道(bzoj 2502)
Description 滑雪场坐落在FJ省西北部的若干座山上. 从空中鸟瞰,滑雪场可以看作一个有向无环图,每条弧代表一个斜坡(即雪道),弧的方向代表斜坡下降的方向. 你的团队负责每周定时 ...
- java常见设计模式简要总结
设计模式六大原则 1.开放封闭原则:对扩展开放,对修改封闭,意即程序拓展时不要动原有的代码 2.LSP原则:任何基类可以出现的地方,子类一定可以出现 3.依赖倒置原则:使用接口,依赖于抽象而不是具体 ...
- 【MFC - 菜单】在对话框程序中添加菜单栏(CMenu)(转)
原文转自 http://lishiqiang1988.blog.163.com/blog/static/41147912201382104631547/ VS2010的MFC对话框程序中添加菜单栏的过 ...
- 在vscode中使用pylint-django插件解决pylint的一些不必要的错误提示【转】
转自:http://www.cnblogs.com/chaojihexiang/p/6417835.html 微软的vscode编辑器是一个好东西,通过vscode编辑python程序非常的方便.推荐 ...