2011-07-07 20 views
2

C#ASP.NET MVCアプリケーションでJSONを返すWCF RESTサービスを使用するのが難しいです。私はコントローラでサービスを消費しようとしています。私はASP.NET MVCプロジェクトと同じプロジェクトのサービスプロジェクトを持っています。私は私のURLにアクセスして正しいJSONが返されるので、http://localhost/SampleService/).The WCFサービスが動作するローカルのIISにエントリを作成しました。C#ASP.NET MVCを使用してWCF Restサービス(JSON)を使用するMVC

JSON経由で消費するコードサンプルはありますか? ?RESTfulなWCFサービスからコントローラー

答えて

1

に行き、ライブラリをダウンロードするには、私はWebChannelFactoryを使用し、それがとてもうまくいきました。

3

あなたはDataContractJsonSerializerを使用することができます。ここでは

は例です:あなたのコントローラで

var client = new WebClient(); 
var data = client.DownloadData("http://localhost/SampleService/GetJsonMessage"); 
var stream = new MemoryStream(data); 
var obj = new DataContractJsonSerializer(typeof(string)); 
var result = obj.ReadObject(stream).ToString(); 

あなたは結果を表示するには、この操作を行うことができ

return Content(result.ToString()) 
0

あなたが使用することができますいずれかDataContractJsonSerializer内蔵、またはJSON.NETライブラリのJsonSerializer

私は後者を好んでいます。なぜなら、これはより堅牢であるからです。 DataContractJsonSerializerは、JSONオブジェクトを逆シリアル化できないことがあります。

サンプルコード:

Product deserializedProduct = JsonConvert.DeserializeObject<Product>(jsonText); 

http://json.codeplex.com/