2012-03-09 15 views
0

の上に私はこのようなXMIデータを返し、残りのサービスを消費しようとしています:WCF - comsume XMI REST

<xmi:XMI xmlns:xmi="http://www.omg.org/XMI" xmi:version="2.0"> 
... 
</...> 

私はこのようなサービス契約でこれを消費したい:

[ServiceContract] 
[XmlSerializerFormat] 
interface IMyService 
{ 

    [OperationContract] 
    [WebGet(
     BodyStyle = WebMessageBodyStyle.Bare, 
     ResponseFormat = WebMessageFormat.Xml, 
     UriTemplate = "myMethod")] 
    MyData MyMethod(); 

... 

} 

私のデータコントラクトは次のように(テスト用空)になります。私は、次の例外を取得

[DataContract] 
[XmlRoot] 
public class MyData 
{ 
} 

ルート名 'XMI'およびルート名前空間 'http://www.omg.org/XMI'(操作 'MyMethod'および契約( 'IMyService'、 'http:// tempuri)のXML本体を逆シリアル化できません.org/'))を使用します。 XMLに対応するタイプが、サービスの既知のタイプのコレクションに追加されていることを確認します。

誰でも任意のアイデア?

答えて

0

は、[OK]を、自分自身を答えを見つけることが(私は名前空間なしに、他のRESTサービスを利用することができる午前): あなたは、名前空間とルート要素名を指定する必要があります。

[XmlRoot(Namespace = "http://www.omg.org/XMI", ElementName = "XMI")] 
public class MyData 
{ 
}