请问,我如何实现JS与C#之间的二进制传输?换句话说,如何将数据用二进制的方式进行传输(传输方式是Ajax)问题1:如何在JS端把数据用二进制方式发送到C#端,C#在将二进制数据还原成可操作数据?问题2:如何在C#端把数据用二进制方式发送到JS端,JS在将二进制数据还原成可操作数据?
我现在用ajax传输的是字符串,我想用二进制传输对象,但并不明白,请高手指点一二,谢谢~

解决方案 »

  1.   

     我觉得 js的 对象 你传给 C# 它 怎么解析那? 它根本不认识它呀。
      

  2.   

    回1楼:比如JS传字典,C#解析字典。这样就可以了。字典二进制传输肯定可以的。或者js把内容拼成固定格式的字符串,用二进制传输到C#,然后C#在按这个格式进行解析。有人可以来回传递对象,还可以传递RS这样的数据集到JS中,所以我才来问有什么办法可以解决的。我能想到的就是先转换一个固定格式的字符串,然后二进制传输,在把这个字符串按照格式转换回来。就可以实现js操作C#获取的数据库的数据集了
      

  3.   

    二进制传输不合适。毕竟二进制传输过去js也解析不了,同时传二进制经常用到byte[]或者stream,javascript也没有这些东西(或者我不知道)。通常做法是传xml或者json。如果非要传2进制,可以考虑用替代的方法,就是把二进制数据生成base64字符串。
      

  4.   

    可以将数据以XML的形式传送到C#,在跨平台方面XML都是不错的选择.
    做的简单一些,可以将XML中的内容以字符的形式传递到C#,然后C#端再Load进去.
      

  5.   

    我是楼主:我最近找到一些办法,就是做二进制转储,JS发送的对象进行转储,转成C#认的对象,比如字典。操作完后在转成JS认的对象,然后在发送回JS端进行处理关键的问题在二进制转储上