Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/286.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/157.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何使用Azure.Storage.Blobs上载流_C#_Azure_Asp.net Core_Azure Blob Storage - Fatal编程技术网

C# 如何使用Azure.Storage.Blobs上载流

C# 如何使用Azure.Storage.Blobs上载流,c#,azure,asp.net-core,azure-blob-storage,C#,Azure,Asp.net Core,Azure Blob Storage,我正在尝试将数据上载/存储到azure blob中。数据是从xmlSerialize对象生成的。由于结果可能很大,并且我的程序中不需要序列化输出,所以我希望将数据直接流式传输到blob中。 这已通过以下方式解决: 但我正在使用它,因为微软推荐它,而另一个已经被取代了。它还支持身份验证 预览解决方案依赖于获取blob的流对象,以便序列化程序可以使用它。但我看不出有任何方法可以用新的API实现同样的效果。我错过什么了吗 但我看不出有任何方法可以用新的API实现同样的效果。我失踪了吗 什么 你说得对。

我正在尝试将数据上载/存储到azure blob中。数据是从xmlSerialize对象生成的。由于结果可能很大,并且我的程序中不需要序列化输出,所以我希望将数据直接流式传输到blob中。 这已通过以下方式解决: 但我正在使用它,因为微软推荐它,而另一个已经被取代了。它还支持身份验证

预览解决方案依赖于获取blob的流对象,以便序列化程序可以使用它。但我看不出有任何方法可以用新的API实现同样的效果。我错过什么了吗

但我看不出有任何方法可以用新的API实现同样的效果。我失踪了吗 什么


你说得对。获取blob的流对象在新SDK中不可用。您需要将数据转换为流,然后在或上使用
Upload
UploadAsync
方法上载blob。

请参阅

新Azure.Storage.Blobs.Specialized.BlockBlobClient(System.Uri)


“您需要将数据转换为流”您的意思是将结果存储在MemoryStream中或将其写入临时文件?将其存储在内存流中。或者,如果需要,您可以将其保存在文件中。然后,您可以分块读取文件,并使用
BlockBlobClient
中提供的方法上载它们。不过,也可以通过Microsoft.Azure.WebJobs事件中的IBinder进行上传。使用(var sw=binder.Bind(new blobatAttribute(blobNameOut,FileAccess.Write)))使用(var writer=new StreamWriter(sw)){wait WriteMethod(streamReader,writer,cancellationToken);}如果您知道是否可以用我感兴趣的任何实现实例化IBinder:)