android webservice 的省流量方法问题 现在我的客户端是android  服务端是用C#的webserviceWeb Service 是采用 XML 标准进行数据传输的。XML 在传输过程中,会附带很多数据的相关信息,并以标签的形式表现出来。在传输过程中,一些情况下,这些标签会占用一半以上甚至更多的数据传输量 ,这样往往浪费很大的流量。省流量方法:1、传递简约的数据格式(如json)2、用发送请求体压缩或者响应压缩,也就是压缩数据。3、尽量减少网络请求现在的问题是Web Service 是采用xml的 请问可以用json返回么, 如果可以,请问有demo或者代码么?第二个方法是压缩,通过压缩SOAP改善XML Web service性能http://blog.csdn.net/joki/article/details/212857但是这篇是用vb的 翻译成C#的 ,客户端要用什么方式解压呢?求求各位大神,帮忙指点一二

解决方案 »

  1.   

    http://wenku.baidu.com/view/c7e034563c1ec5da50e270ef.html
     System.Web.Script.Serialization在服务器端引入
      

  2.   

    一般现在都是 json返回的json的 数据字节 比 XML 小很多你在做接口的时候  把能集合的数据集放在一起减少数据请求次数  同事  在手机本地的 缓存 里面 最好 要有明显的效果压缩就没必要了   我觉得 一般情况下 都没有 多少的数据量 除非你做游戏
      

  3.   

     那个我写的接口返回的是个Dataset的 
    请问这个json的 要在服务端哪里引入呢
      

  4.   

    呃。。能把DataSet 转换成List<T>么。DataSet不知道能不能序列化。            JavaScriptSerializer jsonSerializer = new JavaScriptSerializer();
                //执行序列化(转换成Json字符串)
                string r1 = jsonSerializer.Serialize(<要序列化的数据>);
                
                //执行反序列化(把JSON字符串转成Object类型)
                 Object _Personnel = jsonSerializer.Deserialize<r1>;
      

  5.   

    上面那个写错了
     //执行反序列化(把JSON字符串转成Object类型)
      Object _Personnel = jsonSerializer.Deserialize<Object>(r1);