2017-06-22 7 views
0

Ich arbeite an einem REST-Dienst, der zum Beispiel zur Bearbeitung eines Bildes verwendet wird, um die Helligkeit oder den Kontrast zu ändern. Momentan habe ich eine Windows Form App, auf die ich ein Image hochlade, bevor ich es an den Rest sende. HierEin Bild als Byte-Array an einen REST-Dienst senden

ist der Code Ich habe bisher auf die übrige das Byte zu erhalten:

IRestServiceImpl.cs

[OperationContract] 
[WebInvoke(Method = "POST", 
    ResponseFormat = WebMessageFormat.Json, 
    BodyStyle = WebMessageBodyStyle.Wrapped, 
    UriTemplate = "json/{id}")] 
string jsonData(byte[] id); 

RestServiceImpl.svc.cs

public string jsonData(byte[] id) { 
    return "The byte array is" + id; 
} 

Dies ist mein Versuch, es aus dem Formular zu senden, aber es wird nur leer in Visual Studio Consol zurückgegeben e.

private async void btnRestSend_Click(object sender, EventArgs e) { 

     byte[] byteArray = ImageManipulation.ImgToByte(pictureBox1.Image); 
     ByteArrayContent byteContent = new ByteArrayContent(byteArray); 
     var url = "http://localhost:52278/RestServiceImpl.svc/json/"; 
     HttpClient client = new HttpClient(); 

     HttpResponseMessage response = await client.PostAsync(new Uri(url), byteContent); 

     string responseBody = await response.Content.ReadAsStringAsync(); 

     Console.WriteLine(responseBody); 
} 

ImgToByte

public static byte[] ImgToByte(Image img) { 
    //Converts an Image to a Byte 
    ImageConverter converter = new ImageConverter(); 
    return (byte[])converter.ConvertTo(img, typeof(byte[])); 
} 

Wie kann ich den Byte-Array an den Rest zu Service, so kann ich es erfolgreich gesendet dort manipulieren?

Dank im Voraus :)

+0

[await] (https://docs.microsoft.com/en-us/dotnet/csharp/programming-guide/concepts/async/index) –

Antwort

0

Sie können den Byte-Array an eine Basis 64 Zeichenkette, um sie zu Front-End als Zeichenkette oder innerhalb eines JSON Objekts zu senden konvertieren.

string base64Image = Convert.ToBase64String(byteArray);  

* Convert gehört zur Systembibliothek

Verwandte Themen