0

以下の REST サービスを取得しました。フィドラーからテストする必要があり、多くの検索を行ったところ、ペイロードが以下のように構造化されていることがわかりました。

<Update xmlns="http://tempuri.org/">
    <value></value>
</Update>

「値」は、XElementまたはそれ以外にはIEnumerable<XElement>なりません。

上記の XML は問題ありません (つまり、空の純粋なオブジェクト インスタンスが渡されてブレーク ポイントにヒットします) が、ノード内に「何か」を配置すると、ブレーク ポイントにヒットせずに 400 Bad Request が返されます。

public interface ISomeInterface
{
    [WebInvoke(Method = "PUT", UriTemplate = "/{key}", BodyStyle = WebMessageBodyStyle.WrappedRequest)]
    void Update(string key, object value);

    [WebInvoke(Method = "DELETE", UriTemplate = "/{key}")]
    void Delete(string key);        
}

public void Update(string key, object value)
{
    this.UpdateSomething(key, value, true);
}

問題は、適切な xml を作成して Fiddler を使用してサービスに渡す方法です。

4

2 に答える 2

0

サーバー側コンポーネントで使用されるスキーマ (使用している場合) からテンプレート xml を作成することは、良い出発点です。それ以外の場合は、サービスで抽出するすべての属性を含む単純な xml を作成できます (手動でエラーが発生しやすい)。

于 2013-01-31T14:36:18.300 に答える