Windows phone 7 如何在用于windows Phone的SqlCe数据库中存储图像

Windows phone 7 如何在用于windows Phone的SqlCe数据库中存储图像,windows-phone-7,sql-server-ce,Windows Phone 7,Sql Server Ce,由于Windows Phone中没有ado.net,因此不确定如何执行此操作。如果您能给我看一些代码和示例,我将不胜感激 谢谢我建议: 1-如果您的图像不会很大,则可以将Base64图像数据字符串作为字符串字段存储在数据库中 var base64String = Convert.ToBase64String(imageData); // and store this to database var imageData = Convert.FromBase64String(imageDataStr

由于Windows Phone中没有ado.net,因此不确定如何执行此操作。如果您能给我看一些代码和示例,我将不胜感激


谢谢

我建议:

1-如果您的图像不会很大,则可以将Base64图像数据字符串作为字符串字段存储在数据库中

var base64String = Convert.ToBase64String(imageData); // and store this to database
var imageData = Convert.FromBase64String(imageDataString); // read image data from database
2-否则,您可以为映像(或数据库记录)分配唯一的GUID,并将映像存储在IsolatedStorageFile中

using (var isf = IsolatedStorageFile.GetUserStoreForApplication())
{
    using (var writer = new BinaryWriter(new IsolatedStorageFileStream(filename, System.IO.FileMode.Create, isf)))
    {
        writer.Write(imageData);
    }
}

将在一分钟内添加代码

使用图像数据类型,请参阅此示例:

感谢您的建议。我将尝试选项(1)。但是,当我对base64数据使用图像控件时,IE浏览器不支持base64。所以,我在SqlCe中寻找Varbinary来存储图像。如何做到这一点?您没有提到要在浏览器控件中使用它。对于在silverlight图像控件上显示它,这应该是可行的。我个人选择选项(2)更可靠。选项2应该适用于ISO。但是,我需要将图像存储在SQLCEDB中。在SqlCeDb中将映像存储为base64是个好主意。但是,我喜欢将其存储为流。Thank将在尝试该方法后返回这里。想知道sqlCe数据库中的:1)Varbinary,binary 2)image是否有任何数据限制。例如:varbinary 8000kb的限制。那么图像数据类型呢?是否将图片转换为字节[]或图像数据类型的流?ThanksBinary和varbinary的最大大小为8000字节,用于图像2 GBThank。Windows phone至少有500万像素的cam,高分辨率照片很容易超过300万字节或更多。将在存储之前尝试重新处理图像。我不知道SqlCe数据库大小是否有限制。Windows Phone上的最大数据库大小为512 MB