dt是存放库数据的datatable  第10行为图片  SQL数据库  图片存放格式为image  存放时以二进制数组存放     
 byte[] zhaopian = (byte[])dt.Rows[0][9];
 MemoryStream ms = new MemoryStream(zhaopian);
 pictureBox1.Image = Image.FromStream(ms);//这行提示参数无效 

解决方案 »

  1.   

    public static Image FromStream(
    Stream stream
    )参数类型不匹配 当然不正确了。
      

  2.   

    那该怎么定义.. 用Stream定义吗?  
      

  3.   

    代码没错。 调试一下 dt.Rows[0][9] 读的是不是图片的二进制数组。
      

  4.   

    我刚试了试...好象 没有写进去值...   那我调的时候应该怎么写   用datatable能取出来二进制的值吗?
      

  5.   

    你先把 dt.Rows[0][9]读到image变量中,再将image变量转成byte[]。
      

  6.   

     Image image = new Bitmap((Image)row.Cells["BillImage"].Value);
     byte bBillXML =Convert.ToByte ( image );
    byte[] bt=new byte[1];
    bt[0]=bBillXML;
    MemoryStream ms = new MemoryStream(zhaopian);
     pictureBox1.Image = Image.FromStream(ms );  //试试看,不知对不对
      

  7.   

      直接转化不了image格式的图像    还有没有别的方法?
      
      怎么样可以知道你提出来的是不是图像的二进制数据... 我用的时候提示参数无效..上网查了..  好像大部分都是说二进制数组值没给定..但写法还是我这个写法就是不知道哪地方不一样...我用的是SQL Server2005   在里面保存的是image  
      

  8.   

    http://topic.csdn.net/u/20090318/10/a67c876d-9545-4515-83c4-79ee833fb656.htmlhttp://topic.csdn.net/t/20060904/10/4996342.html
      

  9.   

    如果是二进制调用时没有给值  
    1是我取值不对,那我用datatble 调用时他的返回值是object 怎么转成二进制..
    2是库中没有数据..但我写入的应该没问题.. 没有报错..而且在库中记录中显示有记录  
    字段显示 <二进制数据>  应该是写进去...
      

  10.   

    各位大大帮帮忙.... 搞两天了     
    如果有写好的图片通过C#导入到SQL中的和导出的代码   
    发上来  大家了解下~~ 
    private byte[] zhaopian;//zhaopiao是二进制数组,导入到SQL中用的变量
    pictureBox1.Image = System.Drawing.Image.FromFile(openFileDialog1.FileName);//从对话框中路径获取图片放在picturebox控件中
    string lujing = openFileDialog1.FileName.ToString();//文件存放的路径
    FileStream fs = new FileStream(lujing, FileMode.Open, FileAccess.Read);//通过文件路径转化成文件流
    BinaryReader br = new BinaryReader(fs);
    zhaopian = br.ReadBytes((int)fs.Length);//通过流写到二进制数组中//写入到库中时就是把二进制数组当变量导入.. 这是我复制的别人的代码...请各位大大看看有没有什么不对...或者给个正确的方法
    感谢啊....