Кто-нибудь знает пример того, как сохранить изображение в базе данных SQL Server CE?
Каким типом данных должен быть столбец? (Я предполагаю, двоичный файл.)
Я использую Linq-To-Datasets. Можно ли использовать это, чтобы поместить изображение в базу данных и вытащить его позже?
Спасибо за любой совет.
Вот как я это сделал:
MemoryStream stream = new MemoryStream();
myBitmapImage.Save(stream, ImageFormat.Png);
myInsertLinqToDataSetRow.IMAGE_COLUMN = stream.ToArray();
Чтобы загрузить его снова, я сделал это:
MemoryStream stream = new MemoryStream(myLinqToDataSetRow.IMAGE_COLUMN);
myBitmapImage.SignatureImage = new Bitmap(stream);
Я нашел страницу в MSDN, в которой говорилось, что тип столбца «Изображение» исчезает и вам следует использовать varbinary (MAX). Макс не поддерживается в SQL Server CE, поэтому я сделал varbinary (8000).
ПОЗЖЕ ПРИМЕЧАНИЕ: хотя varbinary (max) не поддерживается в SQL Server CE. Varbinary (8000) недостаточно велик для многих изображений. В конце концов, я использовал тип Image, хотя он и считается устаревшим. Как только ms предложит разумную альтернативу на мобильной платформе, я рассмотрю возможность переключения.