2012-04-27 6 views
2

私はWinFormsアプリケーションを開発しており、バイナリイメージデータをWebアプリケーションに送信したいと考えています。どのように機能するのですか?デスクトップアプリケーションからバイナリイメージをashxハンドラに投稿して受信するにはどうすればいいですか?

私はこれをコード化:

HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url); 
request.Method = "POST"; 
request.ContentType = "application/x-www-form-urlencoded"; 

request.AllowWriteStreamBuffering = true; 
request.KeepAlive = true;     
request.Credentials = System.Net.CredentialCache.DefaultCredentials; 

var fc = GetFileContent(varsayilanResimGuid); 
byte[] postBytes = fc.Dosya; 
request.ContentLength = postBytes.LongLength; 
Stream requestStream = request.GetRequestStream();    
requestStream.Write(postBytes, 0, postBytes.Length); 
requestStream.Close();     

HttpWebResponse response = (HttpWebResponse)request.GetResponse(); 
string content = new StreamReader(response.GetResponseStream()).ReadToEnd(); 

とどのように.ashxで私がこのバイナリイメージコンテンツを受信するには?

+0

はこのヘルプを行います。
はどのようにバイナリイメージを受信するには? http://stackoverflow.com/questions/10213634/uploading-an-image-from-iphone-to-net-ashx-handler – Graymatter

+0

:))私は質問と回答: バイナリイメージを受信する方法。 –

答えて

0

質問と私は答えます。

Stream gelenResim = context.Request.InputStream; 

if (gelenResim.Length == 0) 
{ 
    e.Resim = "/Content/EmlakDetayImaj/Noimages.jpg"; 
} 

string guidim = Guid.NewGuid().ToString().Substring(0, 4); 
var KaydetResimDosya = "/Content/EmlakDetayImaj/" + guidim + ".jpg"; 

using (FileStream fileStream = System.IO.File.Create(context.Server.MapPath("~/Content/EmlakDetayImaj/" + guidim + ".jpg"), (int)gelenResim.Length)) 
{ 
    byte[] bytesInStream = new byte[gelenResim.Length]; 
    gelenResim.Read(bytesInStream, 0, (int)bytesInStream.Length); 
    fileStream.Write(bytesInStream, 0, bytesInStream.Length); 
} 
関連する問題