#1 13. November 2008 C# 3.0 Feature - Object initializer Und wieder ein weiteres Feature von C# 3.0 Thema Object initializer Jeder der einbisschen c# programmiert kenn die Problematik wenn man einen Objekt von seiner Klasse erzeugt und diverse Properties setzen will wie hier: Code: public class Browser { public string Name {get; set;} public int Version {get; set;} } public class RRUser { public string Name {get; set;} public int Age {get; set;} public int RaidRushPosts {get; set;} public decimal Nerdfactor {get; set;} public Browser UsedBrowser {get; set;} } ... RRUser objUser = new RRUser(); objUser.Name = "q3mantis"; objUser.Age = 99; objUser.RaidRushPosts = 12345; objUser.Nerdfactor = 100.00; Object initializing erleichtert die Schreibarbeit einbisschen in dem man gleich bei der Deklaration eines Typs Properties setzen kann. (Class RRUser und Browser von oben) Code: RRUser objTest = new RRUser() { Name = "q3mantis", Age = 99, RaidRushPosts = 12345, Nerfactor = 100.00 }; Das wars auch schon. Man kann die Funktion auch geschachtelt benutzen: Code: RRUser objUser = new RRUser() { Name = "q3mantis", Age = 99, UsedBrowser = new Browser { Name = "FireFox", Version = 3 } } Ich habe im letzten Beispiel die runden Klammern bei "UsedBrowser" weggelassen die für die Constructor-Parameter sind. Falls man einen Parameterlosen Constructor hat bzw ihn benutzen will können diese Klammer bei Object initializing wegfallen. Viel Spaß beim Coden mfg q3mantis + Multi-Zitat Zitieren