2016-12-09 8 views
0

データの構造を作成しようとしています。私が持っているものは3種類のアイテムです。オーダーオブジェクトを作成したいのです。オーダーオブジェクトは、各タイプのアイテムの倍数を持つことができます。現在、3つのタイプがあります。各タイプには独自の詳細(詳細、包含、除外などのリストを含む)がありますが、ここには記載されていません。 Type3はtype1とtype2オブジェクトのリストを含んでいるので特別です(type3 = type1とtype2からなる特別なコンボ)。 複数のオブジェクトからクラスオブジェクトを作成する方法は?

class type1{ string name{get; set;}} 
class type2{ string name{get; set;}} 
class type3{ 
List<type1> singleItems {get; set;} 
List<type2> singleItems {get; set;} 
} 

var order = new {tp1 = List<type1>, tp2 = List<type2>, tp3 = List<type3>}; 

今すぐJavaScriptで私が同じことをやろうとしているが、同様の構造を取得する方法がわからないのです、次のように

私の構造は、これまでのC#の用語です。これまでのところ、これは私が持っているものですが、特にtp3の括弧内に何が入っているのか分かりません。簡単な言葉ために

var order = {tp1:[{}],tp2:[{}],tp3:[{}]} 

は、3つのリストのTP1、TP2、TP3との集まりです。ここで、tp3自体はtp1とtp2の集合です。

+0

null以外のリストで 'type3'のオブジェクトを作成し、それをJSONにシリアル化し、何が生成されているかを確認します。 サイドノート:両方のプロパティが同じ名前を持つので、クラス 'type3'はコンパイルされません。 –

+0

良いアイデア、私はそれを試みます。 – Novice

答えて

3

JavaScriptモデルを以下のように構造化する必要があります。

{ 
    "tp1": [{ 
    "name": "raj" 
    }, { 
    "name": "Reddy" 
    }], 
    "tp2": [{ 
    "name": "stack" 
    }, { 
    "name": "overflow" 
    }], 
    "tp3": [{ 
    "tp1": [{ 
     "name": "raj" 
    }, { 
     "name": "Reddy" 
    }], 
    "tp2": [{ 
     "name": "stack" 
    }, { 
     "name": "overflow" 
    }] 
    }, { 
    "tp1": [{ 
     "name": "raj" 
    }, { 
     "name": "Reddy" 
    }], 
    "tp2": [{ 
     "name": "stack" 
    }, { 
     "name": "overflow" 
    }] 
    }] 
} 

そして、以下のように構造化する必要があるC#クラスオブジェクト。

public class Orders 
{ 
    public List<Type1> tp1 { get; set; } 
    public List<Type2> tp2 { get; set; } 
    public List<Type3> tp3 { get; set; } 
} 

public class Type1 
{ 
    public string name { get; set; } 
} 
public class Type2 
{ 
    public string name { get; set; } 
} 

public class Type3 
{ 
    public List<Type1> tp1 { get; set; } 
    public List<Type2> tp2 { get; set; } 
} 

あなたがdownload the sample projectは、上記構成の実施例を参照することができます。

関連する問題