-1
db.Images.Select(image => new ImageViewModel{
Image64 = //I want to make calcuation on the image.Uri to convert it toBase64
});
我會下載圖像,並將其轉換爲Base64然後將其分配到ImageViewModel
的Image64
財產。 有沒有辦法做到這一點?
編輯
我嘗試以下 Image64 = FromAzureToBase64(image.AzureUri),
它拋出這個異常:
其他信息:LINQ到實體無法識別方法 「System.String FromAzureToBase64(System.String )'方法,而這個方法不能被翻譯成商店表達式。
這是方法(未測試):
private static string FromAzureToBase64(string azureUri)
{
Uri blobUri = new Uri(azureUri);
CloudBlockBlob blob = new CloudBlockBlob(blobUri, StorageAccount.Credentials);
using (MemoryStream stream = blob.OpenRead() as MemoryStream)
{
byte[] arr = stream.ToArray();
var azureBase64 = Convert.ToBase64String(arr);
return azureBase64;
}
}
你的職責是什麼你嘗試過這麼遠嗎?我的意思是,它就像db.Images.Select(x => new {A = 1 * 5})一樣簡單;''例如。你甚至可以調用其他方法,如'A = GetSomeValue(x)' –
我修改了這個問題 –