如何使用c#将windows azure表存储导出为csv文件

本文关键字:csv 文件 存储 何使用 windows azure | 更新日期: 2023-09-27 17:49:30

我是c#和Azure表存储的新手。我已经在c#中创建了一个代码,其中我可以每天创建一个表。我用这种格式命名这个表。

projecttable20140310

我想把我用c#创建的表导出为CSV。让它自动生成。如何使用c#代码将windows azure表导出为CSV文件?我需要从哪里开始?

如何使用c#将windows azure表存储导出为csv文件

我会看一下csvtools。Azure nuget包。它应该能胜任这项工作。下面是作者关于如何使用它的博客:http://blogs.msdn.com/b/jmstall/archive/2012/08/03/converting-between-azure-tables-and-csv.aspx

Install-Package csvtools.azure

我有同样的问题,并在新的Azure.Data.Tables SDK上构建了一个小库,该库使用正确的CSV头+类型进行导出,因此可以正确地重新导入。它还应该与Azure存储资源管理器/azcopy兼容。这样,您就可以在几行代码中导出到CSV文件或Azure BLOB存储。

// Export all rows from the table to a CSV file
using StreamWriter writer = File.CreateText("test.csv");
await _tableClient.ExportCSVAsync(writer);
// Export all rows as CSV to Azure BLob Storage
BlobContainerClient containerClient = new(BlobConnectionString, "testcontainer");
var blobClient = containerClient.GetBlobClient("test.csv");
var stream = await blobClient.OpenWriteAsync(true, new BlobOpenWriteOptions() { HttpHeaders = new BlobHttpHeaders { ContentType = "text/csv" } });
using StreamWriter writer = new(stream);
await _tableClient.ExportCSVAsync(writer);