我顯示了來自API的基本64字符串的圖像。問題是,圖像沒有被顯示。顯示來自base64string的圖像
下面的代碼:
profilePictureImg.Source = GetUserImage(user.MobileNumber);
private BitmapImage GetUserImage(string phoneNumber)
{
BitmapImage bitmapImage = new BitmapImage();
var baseAddress = "http://192.168.0.103/vchatapi/api/Images/" + phoneNumber;
var http = (System.Net.HttpWebRequest)System.Net.WebRequest.Create(new System.Uri(baseAddress));
http.Accept = "application/json";
http.ContentType = "application/json";
http.Method = "GET";
var response = http.GetResponse();
var stream = response.GetResponseStream();
var sr = new StreamReader(stream);
var content = sr.ReadToEnd();
var y ="";
var x = y.FromJson(content);
byte[] binaryData = Convert.FromBase64String(x);
using (MemoryStream ms = new MemoryStream(binaryData, 0, binaryData.Length))
{
ms.Write(binaryData, 0, binaryData.Length);
bitmapImage.StreamSource = ms;
}
return bitmapImage;
}
任何想法?謝謝!
編輯:
得到了修復。出於某種原因,它需要調用BeginInit和EndInit。
謝謝你的回覆。但圖像仍然不顯示。 – ljpv14
那麼首先要檢查的是:你的'binaryData'是你期望的字節數?即您是否已成功獲取數據? –
我會檢查這個。儘管如此,我對binaryData非常有信心。一段時間後會回覆你。 – ljpv14