2016-07-29 88 views
0

在Xamarin.Forms我發送我的圖像休息Api,而在添加圖像沒有根據需要進行轉換,獲取和錯誤無法將system.net.http.streamcontent轉換爲字節[]Xamarin.forms圖像休息api

HttpClient client = new HttpClient(); 
MultipartFormDataContent form = new MultipartFormDataContent(); 
form.Add(new ByteArrayContent(new StreamContent(new MemoryStream(image1)), "bilddatei", "upload.jpg")); 

在代碼中提到的是此搜索使用Xamarin.Forms從相機拍攝的圖像,請幫我解決這個問題,還是讓我知道的替代選項發送圖像REST Web服務。

回答

0

看起來您需要通過byte[]而不是StreamContent。試試這個:

var client = new HttpClient(); 
var form = new MultipartFormDataContent(); 
form.Add(new ByteArrayContent(new MemoryStream(image1).ToArray()), "bilddatei", "upload.jpg"); 

更新:如果您要保存在設備上的存儲的圖片,你可以把它想:

var client = new HttpClient(); 
var form = new MultipartFormDataContent(); 
var path = "path/to/file"; 
form.Add(new ByteArrayContent(File.ReadAllBytes(path)), "bilddatei", "upload.jpg"); 
+0

您好,感謝您對這個幫助,我現在用的是上面的建議,我得到一個錯誤「無法將Xamarin.forms.image轉換爲字節[]」,有關如何解決此問題的任何建議? –

+0

你能發佈更多的代碼嗎?這將有助於知道image1從哪裏來......我剛剛更新了答案,可能會有所幫助 –

+0

public imageRest(Image image) { this.image = image; //image.Source =「/Assets/Image1.png」; MemoryStream stream = new MemoryStream(); ReadFully(流); } –