0

通信にバイナリ シリアル化を使用する WCF サービスを使用する方法はありますか? シリアル化の形式は何ですか? どうにかして .NET シリアル化されたオブジェクト (.NET 以外) を逆シリアル化できますか?

4

1 に答える 1

4

「バイナリ シリアライゼーション」がバイナリ エンコーディングのエンドポイントを意味する場合は、.NET 以外のクライアントで .NET オブジェクトを何らかの方法でデシリアライズできます。形式は公開されています (以下を参照)。ただし、知る限り、その形式でオブジェクトを逆シリアル化できる非.NETクライアント用のライブラリはないため、自分で行ってください。可能であれば、「通常の」XML でデータを公開する別のエンドポイントを追加することを検討する必要があります。

バイナリ形式 (繰り返しますが、バイナリ エンコーダーを使用している場合) は、実際には単なる XML の形式です。したがって、データを次のような形式でシリアル化する代わりに

<Person xmlns="http://my.namespace.com">
    <Name>John Doe</Name>
    <Age>29</Age>
</Person>

バイナリ バージョンでシリアル化されますが、同じデータ (XML Infoset) を表します。

バイナリ XML 形式の仕様は、http://msdn.microsoft.com/en-us/library/cc219210 (v=prot.10).aspx にあります。バイナリ形式は、ディクショナリの概念も定義します(ストリームから繰り返し使用される文字列や一般的に使用される文字列を排除するため) 。 http://msdn.microsoft.com/en- us/library/cc219175(v=prot.10).aspxも同様です。

于 2012-09-25T17:19:01.520 に答える