Ten JavaScript jest tablicą obiektów jest bezpośrednio przeniesione do C# i masz wiele sposobów, aby to zrobić i wiele klas kolekcję do korzystać (w przeciwieństwie do JavaScriptu, który ma tylko jednej klasy kolekcja)
to może być niemal napisane dosłownie w C# i jest całkowicie poprawny (Używanie typów anonimowych):
var players = new [] {
new {name = "Joe",score = 25, color = "red", attribs = new int[]{ 0,1,2,3,4}},
new {name = "Jenny",score = 1, color = "black", attribs = new int[]{4,3,2,1,0}}
};
Ale nie jestem pewien, czy to się dzieje osiągnąć to, czego pragniesz (Funkcjonalność wi e)
IMO tworzenia wpisane obiektu byłoby lepsze podejście (uważam, że jest to lepsze podejście zarówno w języku C# i JavaScript), więc chciałbym go zbliżyć więcej tak (JavaScript):
function Player(name,score,color,attribs)
{
this.name = name;
this.score = score;
this.color = color;
this.attribs = attribs;
}
var players = [
new Player("Joe", 25, "red", [0, 1, 2, 3, 4]),
new Player("Jenny",1,"black", [4, 3, 2, 1, 0])
];
i to samo w C#:
public class Player
{
public string name;
public int score;
public string color;
public int[] attribs;
}
Player[] players = new Player[]{
new Player(){ name = "Joe", score = 25, color = "red", attribs = new int[]{0,1,2,3,4} },
new Player(){ name = "Jenny", score = 1, color = "black", attribs = new int[]{4,3,2,1,0} },
};
lub uzyskać dużo większą elastyczność można wykorzystać je w formie listy jak:
List<Player> players = new List<Player>(){
new Player(){ name = "Joe", score = 25, color = "red", attribs = new int[]{0,1,2,3,4} },
new Player(){ name = "Jenny", score = 1, color = "black", attribs = new int[]{4,3,2,1,0} },
};
Spójrz na parsery JSON, ja osobiście bardzo lubię JsonFX. – Kroltan
spójrz na to http://stackoverflow.com/questions/1056121/how-to-create-json-string-in-c-sharp – blackmind
C# jest bezpiecznym językiem typu, nie nazwałbym tego nieelastycznym ani skomplikowanym, tylko inny język –