【问题标题】:Store an image in a SQL Server CE database C# Compact framework code在 SQL Server CE 数据库中存储图像 C# Compact 框架代码
【发布时间】:2011-07-24 10:33:24
【问题描述】:

您好,我想使用 C# Compact 框架将图像插入数据库 SQL CE..

我的代码

FileInfo Filfo=New FileInfo(OpenFileDialog1.FileName.ToSting());
Long LngLength=5;
FileStream fstrm=new FileStream(OpenFileDialog1.FileName.ToSting());
BinaryReader br=new BinaryReader(Fstrm);
byte[] data=br.ReadBytes(int)lngLenght);

string Query="insert into category(cm_id,cm_image) values(@id,@img)";
sqlcecommand cmd=new sqlcecommand(Query,cls.Connect());
cmd.parameters.add(new sqlcparameter("@id",(object)textbox1.text);
cmd.parameters.add(new sqlcparameter("@id",(object)data);
cmd.executenonquery();

但它显示错误.... openfiledialog1 ,找不到文件....

我的加载图片代码

openfiledialog open=new opendailog();
open.filter="Image Files(*.jpg*bmp;|*.jpg;*bmp;

if(open.showdilog()==dialogresult.Ok)
{
    pitcherbox1.image=new bitmap(open.file);
}

【问题讨论】:

  • 在错误行放置断点并查看 OpenFileDialog1.FileName 值。它等于什么?
  • 你使用的BinaryReader错了。
  • 您还设置了两次@id 参数(可能这只是问题上的错字)

标签: c# image compact-framework sql-server-ce store


【解决方案1】:

从您的错误消息看来,过滤器无效。

试试*.jpg;*.bmp

【讨论】:

    【解决方案2】:
    FileInfo Filfo=New FileInfo(OpenFileDialog1.FileName.ToSting());
    Long LngLength=5;
    FileStream fstrm=new FileStream(OpenFileDialog1.FileName.ToSting());
    BinaryReader br=new BinaryReader(Fstrm);
    byte[] data=br.ReadBytes(int)lngLenght);    
    string Query="insert into category(cm_id,cm_image) values(@id,@img)";
    sqlcecommand cmd=new sqlcecommand(Query,cls.Connect());
    cmd.parameters.add(new sqlcparameter("@id",(object)textbox1.text);
    cmd.parameters.add(new sqlcparameter("@img",(object)data);
    cmd.executenonquery();
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2010-12-12
      • 1970-01-01
      • 1970-01-01
      • 2016-02-18
      • 2011-10-03
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多