1

WCFでRESTGetTimeサービスを作成しましたが、サービスは応答メッセージとしてJSONを返します。また、WebMessageBodyStyleはwrappedに設定されているため、返されるデータに関連付けられたIDがあります。しかし、Fiddlerを使用してサービスをテストすると、応答文字列は次のようになります。

{"GetTimeResult":"2010614104013"}

文字列のIDの上の応答はGetTimeResultであるため、テストのそのビットをタイムスタンプに変更する方法があるのではないかと思います。したがって、次のようになります。

{"timestamp":"2010614104013"}

乾杯。

4

2 に答える 2

0

コードでDataContract/DataMember属性を使用している場合は、名前(およびその他の名前付きパラメーター)を追加します。

[DataMember(Name = "timestamp")]
public string GetTimeResult
于 2010-06-14T13:27:19.613 に答える
0

この記事で指摘したように、データコントラクトでデータメンバーを明示的に使用しておらず、たとえばタイムスタンプを応答の単純な文字列として返したいとします。[return: MessageParameter(Name = "timestamp")]操作コントラクトメソッドでアノテーションを使用するだけです。

[OperationContract]
[WebInvoke(Method = "GET", UriTemplate = "/timestamps", ResponseFormat = WebMessageFormat.Json, BodyStyle = WebMessageBodyStyle.Wrapped)]
[return: MessageParameter(Name = "timestamp")]
string GetStringTimestamp();
于 2018-08-27T15:39:38.320 に答える