2

我已经搜索了很多,似乎找不到一个好的稳定解决方案,所以任何帮助将不胜感激。

场景如下: Windows Mobile 设备在 .NET CF 3.5 上运行客户端应用程序(正在使用 OpenNETCF 库) .NET 3.5 上的 Web 应用程序(运行 IIS 的 Web 服务器)在 VS2008、.NET 3.5 中开发 - 所有最新版本

我需要使用 Web 服务或 WCF 或 MTOM 将大文件传入和传出移动设备。(最好分块)。我找到了一些很棒的文章,但似乎无法正常工作,带有 XML 数据的普通 Web 服务会出现内存不足异常,WCE 在 VS2008 中不可用,CF 上的 WCF 没有给我添加“服务参考”,只有“网络参考”,我束手无策。

有人说,不要使用 WSE,它已经过时了,只使用 WCF 但我无法让它在移动应用程序上运行。

我所需要的只是一个从移动设备到 Web 服务器的简单上/下传输机制,我可以稍后查看压缩和可靠性。

任何人都可以通过一些文章和示例代码为我指明正确的方向吗?

提前致谢。

4

1 回答 1

2

过去,我发现 Web 服务、WCF、MTOM 和 WSE 为大文件传输提供了糟糕的解决方案。尤其是上传。

我最终做的是创建一个客户端/服务器 TCP 连接并通过流发送文件的二进制数据。我在文件数据之前添加了一个标题和 xml 字符串,详细说明了文件数据。就我而言,我需要一定级别的安全性,所以我使用了 System.Net.Security.NegotiateStream。在您的情况下, System.Net.Sockets 命名空间的 TcpClient 和 TcpListener 可能就足够了。CF 3.5 都支持它们。

希望有帮助。

于 2009-02-06T03:15:53.270 回答