2016-05-04 9 views
0

私は、RESTful API Webサービスを呼び出すASP.NET MVC 5カミソリアプリケーションを構築しています.APIの呼び出しの1つにPOSTメソッドが使用されています。私は自分のコードに次の行を持っている:コンパイラがPoastAsJsonAsyncメソッドを見つけられない

var response = httpClient.PostAsJsonAsync("/api/account/AddUserAccount", item).Result; 

は今、私は表示エラーなしでそのラインを構築することができましたが、私はアプリケーションをビルドするとき、私は取得

「HttpClientを」が含まれていません「PostAsJsonAsync」と拡張子なしのメソッド「PostAsJsonAsync」タイプの最初の引数を受け入れる「HttpClientを」の定義が

を見つけることができる私は、エラーの検索を行ってきたと私はそのスタックオーバーフローの投稿を見つけましたSystem.Net.Hへの参照を追加すると言うttp.Formatting.dll、私のシステム上でそのDLLを見つけることができません。このエラーを修正するにはどうすればよいですか?

+0

これは[System.Net.Http.Formatting](https://www.nuget.org/packages/System.Net.Http.Formatting.Extension/)を意味しますか? – MaKCbIMKo

+0

私はそれをインストールしましたが、問題を修正しませんでした。今、私はSystem.Net.Httpを解決できないというメッセージを受け取ります。プロジェクトTestAccountServiceのSystem.Net.Http.Formatting.Extension 5.2.3の依存関係は、フレームワークDNXCore、Version = v5.0をサポートしていません。 –

+0

DNXを使用している場合、PostAsJsonAsyncメソッドを使用することはできません。 以下を試してください: 'var response = await client.PostAsync(" api/values "、新しいStringContent(Newtonsoft.Json.JsonConvert.SerializeObject(item); Encoding.UTF8、" application/json "));' – MaKCbIMKo

答えて

1

PostAsJsonAsyncメソッドを使用する場合は、fo遅いNuGet Package

ただし、DNXを使用している場合は、DNXをサポートしていないために機能しません(まだですか?)。

それ

次の操作を行うことができ、その場合:

var response = await client.PostAsync("api/values", new StringContent(Newtonsoft.Json.JsonConvert.SerializeObject(item);, Encoding.UTF8,"application/json")); 

役立つはずです。

0

あなたはusingステートメントがありません。

using System.Net.Http; /* probably this one */ 
using System.Net.Http.Headers; 
(あなたが検索で見つけたよう)あなたが System.Net.Http.Formatting(.dllファイル) が参照を持っていない限り、ステートメントを使用して、良くないことをもちろん

このDLLナゲットパッケージから来ます!

Microsoft.AspNet.WebApi.Client

最新リンク:

https://www.nuget.org/packages/Microsoft.AspNet.WebApi.Client/

(私はその.dllファイルの私のコピーを見つけた場合)私はここに

https://www.nuget.org/packages/Microsoft.AspNet.WebApi.Client/4.0.20710を持っているバージョン

+0

参照の追加ダイアログに表示される唯一のDLLはSystem.Net.dllとSystem.Net.Http.dllです。 System.Net.Http.Formattingは表示されません。dll –

+0

私のナゲットを見てください。 – granadaCoder

関連する問題