2

mexエンドポイントから生成されたコードでWCFサービスを使用しています。

自動的に生成されたクラスをシリアル化できるようにしたいと思います。

私の問題は、これらの自動生成されたクラスがSystem.ComponentModel.INotifyPropertyChangedインターフェイスを実装していることです。これらをシリアル化すると、次の例外が発生することがあります。

Type 'System.ComponentModel.PropertyChangedEventManager' in 
Assembly 'WindowsBase, Version=4.0.0.0, Culture=neutral, 
PublicKeyToken=31bf3856ad364e35' is not marked as serializable.

[NonSerializable]通常、この例外はイベントに追加することで対処しますPropertyChangedが、ここではコードが自動生成されるため、変更したくありません。

この問題に対処するための最良の方法は何ですか?

4

1 に答える 1

3

使用しているように聞こえますが、WCFタイプは、または関連するシリアライザー(、protobuf-netなど)を使用BinaryFormatterしたシリアル化を目的としています。代わりに使用してみてください-問題は解消されるはずです。DataContractSerializerNetDataContractSerializerDataContractSerializer

于 2012-04-29T19:14:33.543 に答える