私はいくつかのリストに車種を追加する方法を探しています。 これはjsonファイルです。クラスを生成するためにjson2csharpを使用しました。json to c#deserialization
私はより良い方法を使用してすべての車とその色のリストをチェックしたいと思います。例えば40台の車があれば恐ろしいです。
JSON
{
"cars":[
{
"bmw":{
"color":[
"blue",
"red"
]
},
"price":5
},
{
"audi":{
"color":[
"blue",
"yellow",
"white"
]
},
"price":7
},
{
"nil":"nil"
},
{
"peugeot":{
"color":[
"blue",
"red",
"yellow",
"orange"
]
},
"price":12
},
{
"ferrari":{
"color":[
"blue",
"yellow",
"orange"
]
},
"price":12
}
]
}
コード
public class Bmw
{
public List<string> color { get; set; }
}
public class Audi
{
public List<string> color { get; set; }
}
public class Peugeot
{
public List<string> color { get; set; }
}
public class Ferrari
{
public List<string> color { get; set; }
}
public class Car
{
public Bmw bmw { get; set; }
public int price { get; set; }
public Audi audi { get; set; }
public string nil { get; set; }
public Peugeot peugeot { get; set; }
public Ferrari ferrari { get; set; }
}
public class RootObject
{
public List<Car> cars { get; set; }
}
using (StreamReader r = new StreamReader("carDB.json"))
{
string json = r.ReadToEnd();
RootObject car = JsonConvert.DeserializeObject<RootObject>(json);
foreach(Car c in car.cars)
{
}
}
json構造を変更できますか? –
@MickyD まあ、私はこのforeachループに入っています。それは私にBMW、アウディを示す...そして、私はすべての車のために行く必要があるだろうが、私はそのアプローチが気に入らない。 – hurms
@ダルヤン いいえ私はそうではありません。このファイルを処理する必要があります。 – hurms