解决方案 »

  1.   

    字节数据用base64编码。
    SqlParameter应该在服务器端创建。
      

  2.   

    同上。
    1、这个我几年前曾经搞过,对于图片可以采用字节并转base64编码存储于xml的某一结点下,客户端传送后到服务器端进行还原。
    2、sqlparameter在服务器端进行处理。
    http://bbs.csdn.net/topics/360044974
      

  3.   

    webservice中接收SQL语句真是太危险了!
    如果要兼容二进制数据的传输,那就得把二进制数据转换成 base64 或者 十六进制了.比如如下的语句可以支持image字段:
    insert into tablename (img)  values ( 0x313233 )
      

  4.   

    webservice中接收SQL语句真是太危险了!,告诉我接口地址,我去把你数据库全删了
      

  5.   

    1.把图片转换成二进制,让服务器存储;
    FileInfo fi = (FileInfo)fsi;
                            FileVersionInfo fvi = FileVersionInfo.GetVersionInfo(fi.FullName);
                            FileStream fs = new FileStream(fi.FullName, FileMode.Open);
                            byte[] inData = new byte[fs.Length];
                            fs.Read(inData, 0, (int)fs.Length);
                            gstrSQL = "insert into 接口部件(文件名,文件,版本号,修改时间,升级) " +
                                "values(:文件名,:文件,:版本号,:修改时间,1)";
                            LisHelper.ExecuteNonQuery(gstrSQL, new OracleParameter(":文件名", fi.Name),
                                new OracleParameter(":文件", inData), new OracleParameter(":版本号", fvi.FileVersion==null ?"9.9.9.9":fvi.FileVersion),
                            new OracleParameter(":修改时间", fi.LastWriteTime));
                            rtbMsg.AppendText(DateTime.Now.ToString("yyyy-MM-dd") + " " + DateTime.Now.ToLongTimeString() +
                                "  ----  " + "部件:" + fi.Name + "(" + (fvi.FileVersion == null ? "9.9.9.9" : fvi.FileVersion) + ")上传到服务器成功!\r\n");2.你查询数据时取回二进制,然后将二进制转换为图片;
    fs.Write(outData, 0, outData.Length);