2016-04-22 24 views
0

私はC#Webサービス+ Linq to SQLクラス+リターンJSONデータを使用しています。例えばマルチテーブルからjsonデータを返すにはどうすればよいですか?

私のテーブル:

table

データは、この表のリターンJSONから:

JSON

私はC#を使用して、このアプリケーションを作りたいですか?

+0

あなたがプロパティとして 'Badge'と' VoleType'を持つC#でのviewmodelクラスを作成し、そのC#のオブジェクトへのあなたのJSONをデシリアライズすることができます 'HttpContent.ReadAsyncを使用して() ' –

答えて

0

クラスを組み合わせるための新しいクラスを作成します。

public class BadgeVoleModel 
{ 
    public List<Badge> BadgeList = new List<Badge>(); 

    public List<VoleType> VoleTypeList = new List<VoleType>(); 
} 

のDataContextからデータを取得し、BadgeVoleModelにデータを取り込む処理し、そのメソッドコントローラから呼び出すためのメソッド(戻り値の文字列)を作成します。

public string GetData() 
    { 
     var data = new Models.BadgeVoleModel(); 

     data.BadgeList = db.Badges.ToList(); 
     data.VoleTypeList = db.VoleTypes.ToList(); 

     var result = Newtonsoft.Json.JsonConvert.SerializeObject(data); 

     return result; 
    } 

そして逆シリアル化データ用:

public Models.BadgeVoleModel DeserializeData(string data) 
    { 
     var result = Newtonsoft.Json.JsonConvert 
        .DeserializeObject<Models.BadgeVoleModel>(data); 

     return result; 
    } 
関連する問題