WebMethod
ストックシリアル化と実装によるカスタムシリアル化を使用して、数十のクラスを持つオブジェクトを返す がありますIXmlSerializable
。それは正常に動作します。Object
これらのクラスのいずれかを保持できるように 定義されたプロパティを追加しました。
ほとんどの場合、これは機能しますが、新しいプロパティが 1 つの特定のクラスに設定されている場合、フレームワークは上記の例外を (一貫して) 表示します。自動生成されたシリアライゼーション コードを見ると、WriteX_XXX()
多くのクラスを処理するためのコードがメソッド内にあることがわかりますが、例外の原因となっているクラスはわかりません。これが重要かどうかはわかりませんが、このクラスは を介しIXmlSerializable
たカスタム シリアライゼーションを使用しており、それは他のコンテキストでも機能します。
私はXmlIncluded
それを に入れWebMethod
、追加の型としてシリアライザーに追加しましたが、何も変わっていません。変更された唯一のことはXmlElement
、問題のある型を指定する属性をObject
プロパティに追加した場合です。XmlElement
ただし、これにより、シリアライゼーション コードが、指定した型のみに対応するように変更されます。これに何百もの属性を追加する必要はありません。
これについて何か考えがある人はいますか?私はウェブをトロールしましたが、役立つものは何も見つかりませんでした.