我尝试将图像上传到数据库,但是我无法在具有sql数据源的ListView中显示图像
这是我的上传图片代码
int img = ImageUpload1.PostedFile.ContentLength;
byte[] msdata = new byte[img];
ImageUpload1.PostedFile.InputStream.Read(msdata, 0, img);
myCommand.Parameters.AddWithValue("@image_1", msdata);
显示图片
<asp:Image ID="Image1" runat="server" src='<%# DataBinder.Eval(Container.DataItem, "image_1") %>' CssClass="background-image: url(data:image/jpeg;base64,IVB)" />
这是我不断得到的错误
无法将索引15处的Unicode字符\ uDAFF转换为指定的代码页。
答案 0 :(得分:0)
你不必立刻走我的路,但我尝试过,并且工作很快:
我创建了一个将File对象返回给浏览器的方法:
public ActionResult GetThumbnail(Guid id)
{
var fileToRetrieve = Db.Pictures.Find(id);
if (fileToRetrieve == null)
return null;
if (fileToRetrieve.Thumbnail == null)
return null;
return File(fileToRetrieve.Thumbnail, fileToRetrieve.ContentType);
}
在浏览器中,我只是将img src属性设置为该方法,并使用我需要检索的ID。
<img src="~/Picture/GetThumbnail?id=@item.Id" />