如何在WCF连接中忽略数据集架构

时间:2011-11-02 13:45:19

标签: c# .net vb.net wcf serialization

在我的应用程序的服务器端,我有一个这样的函数:

public function GetDS as MyTypedDS
    Dim dsRetVal as new MyTypedDS
    'Make fantastic things with the dataset
    return dsRetVal 
end function

在客户端,我通过生成的“服务引用”调用此函数:

Dim ds as Reference1.MyTypedDS = myRefInst.GetDS

如何禁用类型化数据集的架构序列化以减少流量?

在返回之前,将'dsRetVal'的SchemaSerializationMode设置为ExcludeSchema是否足够?或者WCF忽略了这个选项?

谢谢

1 个答案:

答案 0 :(得分:0)

您是否尝试将DataSet上的RemotingFormat设置为SerializationFormat.Binary?我们在.Net Remoting DataSet中广泛使用它(当然,我们只在绝对必要时才使用它),它有助于显着提高性能。

其他几个选项:

1)二进制序列化DataSet并只传输ByteArray

2)将DataSet序列化为字符串格式(即JSON),然后压缩结果字符串并传输压缩数据。