to: xiangding
防火墙已经开放那个端口了,要不然连正常的字符串都不能通过的。

解决方案 »

  1.   

    同一个类中,接口(获取服务器端某个目录下的所有子目录)
    public string[] GetDirectories(string strDir)
    {
    }
    是可以返回我想要的东东的。
      

  2.   

    用BS。Webservice
    有防火墙还用CS是设计失误。
      

  3.   

    在webService远程传输数据的时候,是不是不能以文件流的方式传递?
    你尝试着把文件读取到DataSet中,然后在远程调用DataSet得到文件看看:)
    我研究的没有这么深,只是简单的读取测试,还没有真正用到实践中。
      

  4.   

    用BS。Webservice
    有防火墙还用CS是设计失误。
    =============》》》????
    他可能是说的有问题,而不应该是设计有问题吧以后的方向估计就是:WinForm + WebService + Xml方式
      

  5.   

    WebService可以穿透防火墙的,还能传对象,而且平台无关
      

  6.   

    要序列化
    双方要直连才行.
    你这样传个FileStream过去是很笨的方法,应该在服务器上多做的工夫,把代码封闭成函数,这样会快,而且穿透性更强,也方便异步.to flower_open(宫爆鸡丁)
    WS什么时候变得在传对象上比REMOTING强了?
    WS就算上了WSE2.用TCP也比不上REMOTING快.上了TCP就不能穿防火墙.WS的资源占有率永远比REMOTING高.需要那么多的跨平台吗?不要动不动就搬这条出来.就算是企业用户,客户端一样是WIN占绝大多数.对于C/S来说,REMOTING就是强,不过它的复杂性和开发时(其实是测试时)硬件要比WS高得多.什么时候WS把低访问量时的性能问题和能把数据2进式序列化时我就用WS了
      

  7.   

    to: eboywy(飞影) 
    或许是我设计失误吧,但是,现在已经是这样做了。
    to:dattotzy(酋长)
    你的建议不错,返回DataSet是没有问题的。我会试试将文件读到DataSet里。
      

  8.   

    to:ajqc(失眠无神闷坐中)
    你说的:在服务器上多做的工夫,把代码封闭成函数
    这个怎么说,我不明白,望赐教。。
      

  9.   

    严重同意 C/S + Webservice
      

  10.   

    Stream没有一个能序列化的,很明显的事情
    但是你可以传送byte[]
      

  11.   

    看你的代码是想进行文件读取和写入操作吧
    这样的话,只要分成2个到4个函数,完成你的要求,中间只传递结果和参数.尽量少传递对象.这样不单快,而且在网络使用率和服务器端CPU占有率上都大有好处
    如果你E文还行的话,我强烈推荐你看一篇文章,全是一些REMOTING的心得
    http://www.thinktecture.com/Resources/RemotingFAQ/RemotingUseCases.html
      

  12.   

    对阿!在web中调用api极不方便,是一个缺陷,希望winform+webservice能弥补!
      

  13.   

    你这个问题和防火墙没有什么关系返回的参数要能够序列化才行,返回byte[]或者DataSet
      

  14.   

    问题按照 ajqc(失眠无神闷坐中)  的方法解决了
    感谢大家
      

  15.   

    我觉得跟防火墙一定有关系吧,因为在局域网中这样做是绝对没有问题的,如果用VPNClient登录后使用也是没有问题,只有当我在外网时才会出现这种情况。郁闷。
    不过现在已经解决了。
    这是个用于访问服务器文件/文件夹的东东,如果大家有兴趣的话可以给我发邮件,我可以将代码免费送给你们。
    我的邮件kintsoon◎hotmail.com
      

  16.   

    用httpchannel与IIS相接合方式是可以的,我这样用的,是可以传一个文件流的