怎样将SQL语句转化成二进制数据进行传输,传入web服务在转化成sql语句操作数据库,
再将数据库返回的数据,转换成二进制数据传回客户端,将数据显示

解决方案 »

  1.   

    bytes[] b=System.Text.Encoding.ASCII.GetBytes(sql); 转
    string sql=System.Text.Encoding.ASCII.GetString(b);解如有双字节字符ASCII→Unicode
      

  2.   

    一般来说不需要这么做。因为sql语句不会太大.如果用gb2312编码的话:
    Encoding encode = Encoding.GetEncoding( "gb2312" );
    string => bytes
    encode.GetBytes(sql语句);bytes => string
    encode.GetString(byte[]);
      

  3.   

    上个是 字符串的BinaryFormatter formatter = new BinaryFormatter();
    Stream fs=new MemoryStream();
    formatter.Serialize(fs, obj);
    //发送此流obj可为任何对象 你可以写成dataTable 或dataSet

    BinaryFormatter formatter = new BinaryFormatter();
    Stream fs=the receive stream
    DataSet ds=(DataSet)formatter.Deserialize(fs);//like this
    对象序列化
      

  4.   

    在webservice中传递的对象都自动地经过序列化和反序列化(xml格式)处理,没有必要特意在把它转换成二进制流~如果用remoting,那就更简单了,它本身就可以自动实现这样的转化~
      

  5.   

    建议楼主不要序列化sql语句了,如果用的是webservice,它自己会序列化的。
    怕别人截取吗?可以做一下非对称加密处理就行了。
      

  6.   

    to 将数据转换成二进制主要是想解决数据传输慢的问题,客户的用的是铁通线,访问太慢只见什么方式通讯,自己写的socket程序?
      

  7.   

    数据库和网站程序放在广域网服务器上,分公司可通过外网访问
    在总公司是铁通线访问太慢,
    我们想的解决办法是在总公司的局域网放置网站程序,传输用二进制传输,将SQL语句转化成二进制数据传入web服务,在转化成sql语句连接数据库执行操作,
    再将查询数据,转换成二进制数据传回客户端,在转换回来,将数据显示
    有更好的方法吗?