日期:2014-05-20  浏览次数:20703 次

WCF service 上传订单文件到ftp
想建立一个wcf service 然后,当用户选择上传订单时,这个service按照订单号找到对应的目录,然后把所有该目录下的文件都上传到ftp。

上传ftp用ftpwebrequest.

这样架构好吧? 感觉 wcf service用来传递少量数据,并且耗时短的造作。可是上传一个订单的所有文件可能需要比较长的时间,通常10-100个文件,可能会有100MB。

想用wcf service,主要是它可以跨平台,我们需要在web, win form,或者用windows service来调用这个
wcf service来大量上传文件。

------解决方案--------------------
你是要在wcf服务器端和ftp之间传递文件,还是在wcf调用客户端和服务器端传递文件,后者的话,不如直接使用http方式上传。
------解决方案--------------------
引用:
要在wcf服务器端和ftp之间传递文件, 订单文件也是在服务器上。我是想有一个windows service,定时从数据库中得到订单状态时完成的订单ID,然后call wcf service method, 比如processOrder(OrderID),剩下的事情就是wcf service去做了,
1。根据订单ID找到目录,取得全部文件
2。是用ftpwebrequest 上传文件到不同的……


我觉得这个方案好一点,还可以加入检查order状态的函数,只要查询数据库就可以了。

WCF 调用中上传,时间会比较长, 容易超时。

倒是可以考虑Callback方式,不过我只是读过文章,没有用过。看起来挺复杂的。参考:
http://www.codeproject.com/Articles/17704/WCF-Duplex-Operations-and-UI-Threads