ここ数日、私はこれに苦労しています。問題を調査し、投稿された解決策を試しました。しかし、それはうまくいきませんでした。私はREST WCF Postメソッドを持っています
[OperationContract(Name = "ImportRawJson")]
WebInvoke(Method = "POST", BodyStyle = WebMessageBodyStyle.WrappedRequest,
ResponseFormat = WebMessageFormat.Json, RequestFormat=WebMessageFormat.Json,
UriTemplate = "ImportRawJson/username/{username}/password/{password}/fileName/{fileName}")]
string ImportRawJson(string username, string password, string fileName, string jsonStream);
これを Web クライアントから使用できます。ただし、 body パラメータの下のように Fiddler を介して呼び出そうとすると、常に null になり、例外が発生します。
フィドラー: 投稿 http:// localhost
/TimesheetService/Timesheet.svc/ImportRawJson/username/user/password/pwd/fileName/testfiddler
リクエスト ヘッダー: ユーザー エージェント: Fiddler ホスト: localhost コンテンツの長さ: 32 コンテンツ タイプ: アプリケーション/json; 文字セット=utf-8
リクエスト本文: { "jsonStream":{ "ImportRaw": {"TestXml": {"xml": "test" } }}}
エラー: HTTP/1.1 400 Bad Request Cache-Control: private Content-Length: 127 Content-Type: application/json; charset=utf-8 サーバー: Microsoft-IIS/7.5 X-AspNet-Version: 4.0.30319 Set-Cookie: ASP.NET_SessionId=wh4qxcu1x0vmiv45mmzuuaup; パス=/; HttpOnly X-Powered-By: ASP.NET 日付: 2013 年 5 月 7 日 (火) 14:00:58 GMT
{"ErrorCode":"Error","Message":"プロシージャまたは関数には、指定されていないパラメータ 'jsonStream' が必要です。"}
body パラメーターを渡す方法についてのヘルプ。本当に感謝しています。私はこの時点で立ち往生しています。助けてください!!前もって感謝します