165 messaggi dal 22 giugno 2008
ho 2 classi:

 
 public   class Articolo 
    { 
    public  string Descrizione { get; set; } 
    } 
 
 public class ListOfArticolo : List<Articolo> 
 { 
  //code here 
 } 


ed una 3° calsse che come proprietà ha una ListOfArticolo:

 
 public class Ditta 
    { 
        public ListOfArticolo Articoli { get; set; } 
 
    } 



con l'aiuto delle reflecions faccio questo:

 
 ListOfArticolo la = new ListOfArticolo(); 
            la.Add(new Articolo{Descrizione="ciao" }); 
            la.Add(new Articolo { Descrizione = "Pippo" }); 
 
            Ditta D = new Ditta(); 
            D.Articoli = la; 
 
            PropertyInfo p = typeof(Ditta).GetProperty("Articoli"); 
            object lo =   p.GetValue(D, null); 



se da debug vedo all'interno della variabile "lo" mi ritrovo i 2 articoli.... ma come li recupero da codice?? come faccio ad iterare all'interno della lista se il valore di ritorno è un object? il guaio è che non posso castare "lo"a ListOfArticolo.
posso magari farmi ritornare un qualcosa di "iterabile"??
Ciao,

provato ad effettuare il cast a IEnumerable? O a IList?

m.
Modificato da Cradle il 17 agosto 2010 13.24 -
165 messaggi dal 22 giugno 2008
il problema è che non conosco a priori il tipo. Non so se sarà un Ienumerable di articoli o caramelle.... L'ideale sarebbe farsi ritornare l'oggetto che contiene la lista fare la GetType() e castarlo proprio a quel tipo ma mi sembra di capire che una cosa del genere non è possibile (tristezza a palate :( )... Magari se esistesse un altro odo per poter scorrere la lista senza conoscene il tipo......
Ok... allora secondo me ti stai muovendo in una direzione sbagliata

Mi spieghi esattamente qual è la tua necessità?
165 messaggi dal 22 giugno 2008
vorrei semplicemente farmi restituire una proprietà contenente una lista di non so cosa e leggerne il contenuto.... tutto qui... il problema è che non posso sapere a priori il tipo generic della lista....
O usi reflection per scoprire a runtime quali sono gli elementi delle tue collection e poi, sempre tramite reflection, accedere ai membri, oppure puoi fare in modo che i tipi che vuoi gestire implementino un'interfaccia comune e ragionare in termini di quest'ultima.

Ciao,
m.

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.
In primo piano

I più letti di oggi

Media
In evidenza
MISC