2017-03-29 6 views
0

検索パラメータ付きキュートリガーを備えた晴れやかなWebジョブを作成しました。 これらのパラメータを使用して検索を処理し、レコードをcsvファイルに保存したいとします。csvファイルをwebjobに保存するには

私はazureにcsvファイルを保存する方法を欲しいので、私はそれをユーザーにダウンロードするリンクを送ることができますか?

答えて

0

Azure BLOBストレージを使用してCSVを保存できます。コンテナに正しいパーミッションがあることを保証することによって、BLOBへのリンクを直接取得してユーザに送信することができます。さらに、SASUrlを使用してURLの有効期間を制限することもできます。

0

私はazureにcsvファイルを保存する方法を欲しいので、私はそれをユーザーにダウンロードするリンクを送信できますか?

csvファイルを生成してAzureブロブストレージに書き込むことができます。ここでは簡単なサンプルですので、参考にしてください。

public static void ProcessQueueMessage([QueueTrigger("myqueue")] string message, [Blob("mycontainer/{queueTrigger}.csv")] out string output, TextWriter log) 
{ 
    DataTable dt = new DataTable(); 
    dt.Columns.Add("ID"); 
    dt.Columns.Add("Name"); 

    dt.Rows.Add("1", "fred"); 

    //your logic to query the result 
    //and generate CSV string 

    StringBuilder sb = new StringBuilder(); 

    IEnumerable<string> columnNames = dt.Columns.Cast<DataColumn>(). 
             Select(column => column.ColumnName); 
    sb.AppendLine(string.Join(",", columnNames)); 

    foreach (DataRow row in dt.Rows) 
    { 
     IEnumerable<string> fields = row.ItemArray.Select(field => field.ToString()); 
     sb.AppendLine(string.Join(",", fields)); 
    } 


    output = sb.ToString(); 

    log.WriteLine(message); 
} 

あなたはAzureのブロブでcsvファイルを保存した後、あなたはmycontainer/{} blobnameのURLをユーザーに提供することができます.CSV。また、匿名アクセスを許可したり、クライアントに共有アクセス署名(SAS)を提供して、他のユーザーがBLOBを利用できるようにすることもできます。

ブロブデータへのアクセスを制御する方法については、「Controlling access to blob data」を参照してください。

関連する問題