WCF Xml与二进制序列化的优点和缺点

时间:2009-12-17 09:33:50

标签: .net wcf

我知道如果我在WCF中使用二进制序列化,我会失去互操作性。

如果我愿意接受这一点,我很遗憾在使用二进制文件而不是Xml时是否有效率优势。

如果还有其他优点和缺点,我上面没有提到

2 个答案:

答案 0 :(得分:5)

是的 - 可能很重要。与二进制等价物相比,XML序列化数据很大。使用二进制文件,您将失去可读性和互操作性。除非您使用的是Windows Server 2008或Windows Vista或更高版本,否则您也无法在IIS中进行托管。

但是,如果您处于.NET to .NET场景中,性能会在许多情况下超过这些缺点。

答案 1 :(得分:4)

如果您不需要互操作性,是的,使用二进制序列化比直接文本序列化要好得多(更快,更紧凑)。

与任何Http绑定相比,这就是使NetTcp绑定如此之快的原因。但是如果控制线的两端,你也可以轻松地通过Http进行二进制编码。

参见Jeff Barnes的blog post关于如何通过http启用二进制编码,仅使用自定义绑定配置 - 无需重载编码! :-)