gpt4 book ai didi

c# - ADO.NET 数据服务的数据压缩

转载 作者:行者123 更新时间:2023-11-30 19:34:22 26 4
gpt4 key购买 nike

我有一个由 .NET 客户端应用程序使用的 .NET 应用程序(不是 IIS)公开的 ADO.NET 数据服务。对此数据服务的某些调用会返回大量数据。

我想压缩传输中的 XML 数据以减少负载并提高性能。这可能吗?

最佳答案

我假设你是 hosting using WCF在您的 .NET“应用程序”中?如果是这样,您需要编写一些自定义的 MessageEncoder实现,因为 WCF 不提供开箱即用的功能。幸运的是有 a sample in the SDK你可以使用。

实际上我刚刚意识到这只是两个步骤中的第一步,具体取决于您的客户端是否也是 WCF?虽然这将对消息进行编码,但它需要您的客户端使用类似配置的解码器,因为该实现不会设置 HTTP header ,而这些 HTTP header 是“纯”HTTP 已发生编码所必需的信号客户。因此,如果另一端不是 WCF 客户端,除了对消息本身进行编码之外,您还需要使用 WebOperationContext 来应用适当的 Content-Encoding: gzip 标题。不幸的是,您不能在 MessageEncoder 实现本身中执行此操作,因为在这个过程中为时已晚,因为当 MessageEncoder 被要求将消息内容写入消息帧时,在这个如果是 HTTP header ,已经写好了。因此,您还需要额外的行为,形式为 IOperationBehavior。 , 应用于相应设置 header 的操作。

关于c# - ADO.NET 数据服务的数据压缩,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1691401/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com