在用C#写文件传输系统时,需要服务器端指定文件路径和文件名,客户端才能将文件正确传送至服务器端.  有什么办法可以不用在服务器端指定文件路径和文件名,直接通过客户端传的文件名创立服务器端文件?

解决方案 »

  1.   

    唉,这类问题充斥初学者。所谓的“结构体”是老掉牙的论调了,至少最近5、6年早已经都不是这样的了。例如看看流行的xmpp协议。很简单,将非常复杂的对象,序列化成xml,然后传递给服务器。服务器就可以反序列化为非常复杂的对象。而且客户端和服务器端的对象并不需要相同,xml具有非常大的灵活性和智能。假设信令中有二进制数据,你可以在协议中规定。例如就可以规定连续两个换行回车之后是二进制数据,因为xml序列化结果不会包含两个连续的换行回车。
      

  2.   

    xml并非无懈可击,尺寸就是很大问题。建议还是使用成熟协议,比如ftp,当然你也可以模拟flickr的文件传输轻型协议,已经经过验证过的技术。