1

svcutilツールを使用してプロキシを生成しています。私のコントラクトメソッドは特定のタイプのオブジェクトを返します。ただし、生成されたプロキシクライアントインターフェイスには、オブジェクト型の戻り値があります。さらに、次のメッセージで例外が発生します。

System.ServiceModel.FaultException`1[System.ServiceModel.ExceptionDetail] : The formatter threw an exception while trying to deserialize the message: There was an error while trying to deserialize parameter http://tempuri.org/:name. The InnerException message was 'XML 'Element' 'http://tempuri.org/:name' does not contain expected attribute 'http://schemas.microsoft.com/2003/10/Serialization/:Type'. The deserializer has no knowledge of which type to deserialize. Check that the type being serialized has the same contract as the type being deserialized.'.  Please see InnerException for more details.

何が起こっているのかアイデアはありますか?

4

2 に答える 2

0

svcutil がタイプを理解するのに問題があるようです。他のアセンブリでカスタム型が定義されている場合は、[KnownType]属性を使用して、何が起こっているかを svcutil に伝える必要がある場合があります。

こちらの MSDN リファレンスを参照してください

于 2009-11-25T12:33:51.747 に答える
0

うーん、私は WCF と私が調査しているプロジェクトが初めてです...しかし、サービスによって返されるデータ型が DataContract 属性で装飾されていないことに気付きました。それが問題ですか?

于 2009-11-25T14:22:49.713 に答える