Que Tal Inicialização De Propriedades E Adição A Colecções Como A Inicialização De Objectos E Colecções Em C#?

O C# 3.0 introduziu inicializadores de object and collection. É agora possível criar objectos e colecções pré-inicializados:

var person = new Person { FirstName = "Paulo", LastName = "Morgado" };

var persons = new List<Person> {
    new Person { FirstName = "Paulo", LastName = "Morgado" },
    new Person { FirstName = "Luís", LastName = "Abreu" }
};

var personDirectory = new Dictionary<string, Person> {
    { "Lisboa", new Person { FirstName = "Paulo", LastName = "Morgado" } },
    { "Funchal", new Person { FirstName = "Luís", LastName = "Abreu" } }
};

Não era bom podermos fazer o mesmo para objectos e colecções já existentes?

Que sintaxe seria usada? Algo deste género?

var person = new Person();
person = { FirstName = "Paulo", LastName = "Morgado" };

var persons = new List<Person>();
persons += {
    new Person { FirstName = "Paulo", LastName = "Morgado" },
    new Person { FirstName = "Luís", LastName = "Abreu" }
};

var personDirectory = new Dictionary<string, Person>();
personDirectory += {
    { "Lisboa", new Person { FirstName = "Paulo", LastName = "Morgado" } },
    { "Funchal", new Person { FirstName = "Luís", LastName = "Abreu" } }
};

O que pensam disto?

[Cross-Posted de http://www.arquitecturadesoftware.org/blogs/paulomorgado/]

Published 2008-8-11 0:37 by Paulo Morgado

Leave a Comment

(required) 
(required) 
(optional)
(required)