2011-03-28 59 views
1

你好,我想插入圖片使用C#Compact框架數據庫SQL CE影像..存儲在SQL Server CE數據庫的C#緊湊的框架代碼

我的代碼

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); 
} 
+0

認沽斷點,並期待在OpenFileDialog1.FileName值。它等於什麼? – 2011-03-28 12:13:31

+0

您正在使用'BinaryReader'錯誤。 – leppie 2011-06-27 11:18:35

+0

你也設置@id參數兩次(可能這只是一個錯誤的問題) – MattDavey 2011-09-07 08:09:07

回答

0

從您的錯誤消息看,它看起來像過濾器無效。

在錯誤行儘量只*.jpg;*.bmp

1
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();