Invest in people before investing in tools

Il blog di Matteo Baglini
posts - 118, comments - 95, trackbacks - 697

[Spring.NET #5] Spring.Core, Definire e Creare Generic Types

Spring.NET è basato sulla versione 2.0 del .NET Framework quindi permette l' utilizzo dei generics. Vediamo subito un paio di esempi per capire la sintassi, cominciamo dichiarando e creando una semplice lista di interi:

<object id="ListInteger"               
type="System.Collections.Generic.List&lt;int>" />

per istanziare la collection utilizzeremo questa riga di codice:

List<int> _col1 = (List<int>)_ctx.GetObject("ListInteger");

adesso dichiariamo una collection Dictionay con il tipo chiave string e il tipo valore object:

<object id="DictionaryStringObject"         
type
="System.Collections.Generic.Dictionary&lt;string,object>" />

di seguito il codice per istanziarla:

Dictionary<string, object> _col2 = (Dictionary<string, object>)_ctx.GetObject("DictionaryStringObject");

Come possiamo vedere dagli esempi l'unica cosa da fare per definire un tipo generico è sostituire il bracket di sinistra con la stringa &lt; . La sintassi è un po ostica, soprattutto quando dobbiamo definire oggetti complessi, magari composti da altri oggetti annidati come per esempio una collezione Dictionary<string,<Dictionary<int,object>>, la quale risulterà così:

<object id="DictionaryStringDictionaryIntObject"
type="System.Collections.Generic.Dictionary&lt;string,System.Collections.Generic.Dictionary&lt;int,object>>" />

in questi casi possiamo ricorrere all'aiuto dei Type Aliases, dei quali parlerò nel prossimo post.

Technorati Tags:

Print | posted on domenica 9 settembre 2007 15:39 | Filed Under [ .NET OpenSource Spring.NET ]

Powered by:
Powered By Subtext Powered By ASP.NET