2016-09-06 4 views
0

このサンプルコードでは、ボタンをクリックしてデータベーステーブルから画像を手動でダウンロードしています。 HTMLページに更新されたデータベーステーブルから画像を自動的にダウンロードする方法は?

:背後

<asp:Button ID="Button1" runat="server" Text="Convert Byte to All Image " OnClick="Button1_Click" /> 

コード:

protected void Button1_Click(object sender, EventArgs e) 
     { 
      string sConn = ConfigurationManager.ConnectionStrings["conString"].ToString(); 
      SqlConnection objConn = new SqlConnection(sConn); 
      objConn.Open(); 
      string sTSQL = "Select TOP 1500 FileData, FileValue from Demo_Tbl where Active=1 and FileGroup='C_Photo'"; 
      SqlCommand objCmd = new SqlCommand(sTSQL, objConn); 
      objCmd.CommandType = CommandType.Text; 
      SqlDataAdapter adapter = new SqlDataAdapter(); 
      DataTable dt = new DataTable(); 
      adapter.SelectCommand = objCmd; 
      adapter.SelectCommand.CommandTimeout = 10000; 
      adapter.Fill(dt); 
      objConn.Close(); 
      for (int i = 0; i < dt.Rows.Count; i++) 
      { 
       string FileValue = dt.Rows[i]["FileValue"].ToString(); 
       object FileData = dt.Rows[i]["FileData"]; 
       System.IO.File.WriteAllBytes(Server.MapPath("/Images/" + FileValue), (byte[])FileData); 
      } 
      Response.Write("Images has been fetched"); 
     } 

私はDemo_Tblテーブルはいくつかのいずれかによってたびに更新されたときに、このダウンロードが自動的に行わたい。また、クラウドデータベース(https.clode.azure.com)のブロブにダウンロード対象のフォルダが必要です。

私は手がかりが少ないので、私はこれを手伝ってくれる人が必要です。

+0

更新とは、行を更新する特定の方法をトリガーすることを意味します。それで、あなたは私が推測する方法で特定のフォルダにダウンロードを行うことができます。 –

+0

@ AT-2016 - 私はトリガーに慣れていません。はい、このテーブルはランダムな人によって更新され、現時点では自分のコードを実行して画像を自動的にダウンロードしたいと考えています。 – Jaggi

+0

テーブルを更新すると、行を更新し、メソッドを使用して行を更新することを意味します。なぜ、あなたは更新イベントでこの自動ダウンロードをしないのですか? –

答えて

0

ええ、それは更新イベントでダウンロードすることをお勧めします。

更新イベントにダウンロードコードを書き込む場合、更新イベントが完了する前にダウンロードメソッドを待機する必要があります。キューメッセージをAzureストレージキューに挿入し、Azure webjob QueueTriggerを使用してファイルをAzure Blobにダウンロードすることをお勧めします。 HereはAzure Webjob QueueTriggerを使用してイメージのサイズを変更するのと同様のシナリオです。あなたのシナリオに役立つと思います。

+0

_ありがとう私にそれを見てみましょう – Jaggi

関連する問題