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 ...
随机推荐
- Leetcode 594.最长和谐子序列
最长和谐子序列 和谐数组是指一个数组里元素的最大值和最小值之间的差别正好是1. 现在,给定一个整数数组,你需要在所有可能的子序列中找到最长的和谐子序列的长度. 示例 1: 输入: [1,3,2,2,5 ...
- Java开发微信公众号(四)---微信服务器post消息体的接收及消息的处理
在前几节文章中我们讲述了微信公众号环境的搭建.如何接入微信公众平台.以及微信服务器请求消息,响应消息,事件消息以及工具处理类的封装:接下来我们重点说一下-微信服务器post消息体的接收及消息的处理,这 ...
- 爬虫:Scrapy1
Python 2.7 npm install scrapy 步骤: 创建一个 Scrapy 项目 定义提取的 Item 编写爬取网站的 Spider 并提取 Item 编写 Item Pipeline ...
- windows下命令行
创建文件夹 mkdir 文件夹名字 创建文件 echo >文件名字 输入文件内容
- webService的wsdl和restful的wadl的区别
WebService之WADL和WSDL区别 两者都是基于自然语言描述的Web Application接口 . WADL主要用于Rest基础. Java开发WebService最重要的两个规范: JS ...
- GROUP BY子句的查询中显示COUNT()为0的结果
含有GROUP BY子句的查询中如何显示COUNT()为0的结果 在SQL Server数据库查询中,为了对查询结果进行对比.分析,我们经常会用到GROUP BY子句以及COUNT()函数来对查询结果 ...
- Codeforces Round #315 (Div. 2) A 水且坑
A. Music time limit per test 2 seconds memory limit per test 256 megabytes input standard input outp ...
- nodeJS学习(9)--- nodeJS模块:exports vs module.exports
模块简介: 通过Node.js的官方API可以看到Node.js本身提供了很多核心模块 http://nodejs.org/api/ 这些核心模块被编译成二进制文件,可以 require('模块名') ...
- H5 语义化、基本事件 浅析 (含file对象、drag拖拽等)
1.语义化标签 帮助搜索引擎,盲人设备等程序,辨识网页内容信息,明确网页区域分布,不体现任何样式,但存在浏览器兼容性问题,如IE8下无<header>标签. ① H5基本语义标签: < ...
- Eat the Trees(hdu 1693)
题意:在n*m的矩阵中,有些格子有树,没有树的格子不能到达,找一条或多条回路,吃完所有的树,求有多少中方法. 第一道真正意义上的插头DP,可参考陈丹琦的<基于连通性状态压缩的动态规划问题> ...