Open RainingNight opened 6 years ago
是啊,都9102年了
这就是国内云平台第一大厂的效率?真实有够好笑的呢^^
大家可以用c#官方提供的wrapper将BeginInvoke/EndInvoke方式的包装成async/await方式的方法
var result = await Task.Factory.FromAsync((cb, o) => client.BeginPutObject(bucketName, objectName, stream, cb, o), client.EndPutObject, null);
看看参数形式,就会发现其余的函数的包裹方法类似。 @RainingNight @likan971 @Afanyiyu
@crucialize 这样看着不优雅啊。。。。。。
看来.NET确实是二等公民,java/node.js这种一等公民确实占优势。后来我们就自己写了,不仅仅是考虑异步编程,还写了一个云存储抽象层,以后从OSS换到AWS S3/Azure Blob会更方便。
但还是真心希望阿里云官方能够提供异步操作的SDK,可以省我们自己不少事情,这里不得不吐槽一下阿里云的文档:API文档看上去很全很强大什么都有,但质量实在是不高,信息也很分散,很多API看完文档后根本不能成功调用,必须要配合看某个语言的SDK实现(特别是认证这块,把我们折腾够了,一个OSS的上传回调的用法就足够开发人员喝一壶的了,比如验证回调请求是从OSS服务器过来的这种操作)。总之就是:阿里云文档感觉不是Technical Writer写的,而是把文档任务分配给开发人员,在完成代码以后写的,文档的顶层设计、结构和细节质量比较像小作坊的做法,是为了把信息记录下来写文档而不是帮助开发人员更有效理解和使用API写文档,也是难为阿里云的开发团队了。
竞品分析:没关注过国内其他云提供商,AWS的.NET SDK对.NET Core只提供Async风格的接口(没看错,只有Async没有同步),而微软的Azure SDK在Blob Storage的操作全部提供三种接口:
.NET是微软的亲生儿子但是贵,而AWS在中国的市占率惨不忍睹,阿里云胜在便宜又大碗,基础的产品功能够用,其他细节质量牺牲一点市场也会买单的,谁让阿里云那么便宜。
我个人感觉:如果是非常大的项目大量使用云平台的服务,使用阿里云在开发和应用变更成本上会比使用AWS和Azure高,但运营成本会更低,看怎么选了。
2021年了都,还不支持 Async/Await 。。。
马上2022年了。。。。
感人的alioss。。。
2022了,还是不支持?
这个问题提出已经4年了,访问网络服务基本上都是异步操作,到处都是async await,希望阿里云的技术管理者重视该问题,与时俱进
新版OSS SDK可以关注此仓库。底层使用的HttpClient,有纯异步的API。Nuget搜索AlibabaCloud.SDK.Oss20190517
即可。
收到了 哈哈
卧槽,四年了,终于支持了
能不能使用Async/Await,别用那个Begin..../End.........了?