У меня есть несколько скриншотов и некоторые метаданные скриншотов, которые я пытаюсь отобразить в веб-приложении ASP.NET MVC 3, я пытаюсь получить данные из моей базы данных, но получаю эту ошибку:
LINQ to Entities не распознает метод 'System.Drawing.Image
ByteArrayToImage (Byte []) ', и этот метод не может быть переведен
в магазинное выражение.
Вот мой код:
var screenshotData = (from screenshots in db.screenshots
where screenshots.projects_ID == projectID
select new ImageInformation
{
ID = screenshots.id,
Language = screenshots.language,
Screenshot = Utility.ByteArrayToImage(screenshots.screen_shot),
ProjectID = screenshots.projects_ID
});
foreach (ImageInformation info in screenshotData)
{
this.Add(info);
}
ImageInformation - это простой класс, содержащий определение сохраненной информации (ID, язык, снимок экрана, ProjectID).
Вот моя функция ByteArrayToImage:
public static Image ByteArrayToImage(byte[] byteArrayIn)
{
using (MemoryStream ms = new MemoryStream(byteArrayIn))
{
Image returnImage = Image.FromStream(ms);
return returnImage;
}
}
Кто-нибудь может сказать мне, почему я получаю эту ошибку при запуске этого кода?
Спасибо.