.net - 确定 .NET CF 中 Web 服务调用的传输数据大小

标签 .net web-services .net-3.5 compact-framework gprs

我正在开发一个 .NET CF 客户端应用程序并使用 Web 服务进行数据传输。我正在使用 SharpZipLib 压缩传输的数据集,因此我知道传输的字节数组的大小。

我想知道是否有一种简单的方法来确定完成单个调用的请求大小(html headerder、soap 信封和真实数据)。我真的想尽量减少 GPRS 连接成本。

谢谢...

最佳答案

重新提出整体问题;对不起,我不知道使用网络跟踪器...

然而;我可以谦虚地建议数据集和 SOAP 并不总是带宽受限设备的最佳选择吗?压缩做得很好,但并不总是理想的。除非您需要提供的功能,否则可以使用更简单的协议(protocol)(例如 POX,可能使用内置协议(protocol)压缩 (GZIP/Deflate))。

在事情的另一端...如果您可以将事情表述为消息,那么像 protobuf-net 这样的序列化程序可能有用(结合原始二进制帖子);它们的数据非常密集(因此尝试使用压缩不可避免地会增加大小)。但是,您需要在客户端进行自己的数据/更改跟踪,并且 RPC 堆栈尚不完整(我有工作原型(prototype)代码,但我还没有提交它,因为我还在单元测试它)。服务器也将有所不同(即不是 asmx 或其他任何东西 - 可能是操纵的处理程序或 MVC Controller )。

作为另一种选择 - ADO.NET 数据服务可能会引起人们的兴趣,尤其是在 JSON 模式下(对于带宽,再次使用协议(protocol)压缩)。

关于.net - 确定 .NET CF 中 Web 服务调用的传输数据大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/634638/

相关文章:

C# 和 SQL Server 2008 CLR 序列化问题

.net - 中止阻塞线程

java - 在 Axis2 中启用 JSON 响应

.net - 我可以在不引用 Microsoft.VisualBasic 的情况下以 c# VB6 样式拆分字符串吗?

c# - 带有 WPF 的 Aero 玻璃框架上类似 Windows 资源管理器的搜索框

java - 在 JAVA 中从 WADL URL 生成休息客户端

c# - Boost 数学(ibeta_inv 函数)不是线程安全的?

.net - 在ASP.NET Core网站中使用Reporting Services(SSRS)作为引用

.net - 在线程(.NET)中锁定或 try catch 字典是否更有效

database - 对返回图像、音频和所有重量级数据类型的 Web 服务的调用