2012-03-21 17 views
0

私はサーバー上の自分のWebサイトと別のサーバーのデータベースをホストしています。私はwebservicesによってデータベースに接続し、データベースサーバーにイメージファイルをアップロードする必要があります。 asp.net 3.5とjqueryasp.net3.5でサーバーから別のサーバーにイメージファイルを転送する方法

私はoracleデータベースを持っています。私はテーブルに画像を保存する必要があります。私はソースサーバ上でasp.netを持っていますが、db hasnt aspを持つサーバはftp share fileあなたは別の方法が必要です。

+0

データベースとは何ですか?あなたはテーブルに画像を保存しますか? – Pankaj

+0

両方のサーバーでasp.netを実行できますか? asp.netを持っていない場合に画像をアップロードしたいサーバーでは、使用できるFTPアクセス権がありますか? – Aristos

+0

データベースがオラクルで、テーブルに画像を保存する必要があります – Tarek

答えて

0

asp.netを使用してftpclient経由であるサーバーから別のサーバーにファイルを転送できます。

サンプルコードは次のようになります。

FtpWebRequest ftpClient = (FtpWebRequest)FtpWebRequest.Create(ftpurl + "_" + filename); 
ftpClient.Credentials = new System.Net.NetworkCredential(ftpusername, ftppassword); 
ftpClient.Method = System.Net.WebRequestMethods.Ftp.UploadFile; 
ftpClient.UseBinary = true; 
ftpClient.KeepAlive = true; 
System.IO.FileInfo fi = new System.IO.FileInfo(fileurl); 
ftpClient.ContentLength = fi.Length; 
byte[] buffer = new byte[4097]; 
int bytes = 0; 
int total_bytes = (int)fi.Length; 
System.IO.FileStream fs = fi.OpenRead(); 
System.IO.Stream rs = ftpClient.GetRequestStream(); 
while (total_bytes > 0) 
{ 
    bytes = fs.Read(buffer, 0, buffer.Length); 
    rs.Write(buffer, 0, bytes); 
  total_bytes = total_bytes - bytes; 
} 
fs.Close(); 
rs.Close(); 
FtpWebResponse uploadResponse = (FtpWebResponse)ftpClient.GetResponse(); 
string status = uploadResponse.StatusDescription; 
uploadResponse.Close(); 

希望すると、これが役立ちます。

+0

兄弟Muhammad Irfanに感謝します。この方法では、データベースサーバ上のFTPファイル共有が必要です。クライアントからデータベースサーバーへ直接ファイルを転送できますか? – Tarek

1

サーバーとサーバーの場合、jQueryを使用する必要はありません。

ターゲットデータベースサーバーで実行されているWindowsサービスまたはIISホストWCFサービスが必要です。このサービスは、WCFエンドポイントを公開し、データベースに接続します。次に、ファイル名を入力として使用するか、ファイルシステムを監視するクライアントをソースサーバーに書き込む必要があります。これは、データベースサーバー上のWCFサービスに接続します。

これを設計するより良い方法は、ソースサーバーからデータベースに直接接続し、そのデータをデータの列型のテーブル行に渡すことです。

+0

アドリアンに感謝します。 wcfはあなたに私に簡単な例を与えることができますか、ありがとう。 – Tarek

+0

次のリンクに例があります。下部にはWCFの例をダウンロードできるリンクがあります。これらのサンプルをダウンロードし、Streamingサンプルのコードを調べる価値があります。http://msdn.microsoft.com/en-us/library/ms751463.aspx –

+0

for(i = 0、i> = 0、i ++) {ありがとうたくさん} ,,,,,私は見る – Tarek

関連する問題