Newsgroup: it.comp.programmare
Titolo: Problema nell'esecuizione del seguente codice.

Non funziona:
ElencoComuni  filtratiCom = new
ElencoComuni(comuni.FindAll(delegate(Comune com)
					{
						return com.CodiceProvincia == prov.CodProvincia;
					}));
dove ElencoComuni : List<Comune>
      com è un oggetto di tipo Comune
      prov è un oggetto di tipo Provincia
      comuni è un oggetto di tipo ElencoComuni
Funziona:
List<Comune> filtratiCom = (comuni.FindAll(delegate(Comune com)	
                     {
                         return com.CodiceProvincia== prov.CodProvincia ;
                     }));
In questo caso non creo la classe ElencoComuni : List<Comune>
Secondo me il problema sta nel metodo FindAll che restituisce List<Comune>
Come faccio a risolvere il problema ?

 dove ElencoComuni : List<Comune>
C#?
Io userei l'ereditarietà con più accortezza, btw.

crxor 666 ha scritto:

Ti dispiace essere più chiaro ?

 Ti dispiace essere più chiaro ?
La relazione di ereditarietà è un vincolo *estremamente* forte che lega
*tantissimo* due componenti.
Tipicamente il tuo elenco di comuni non *è* una *lista* di comuni inteso
in termini di libreria. Si *comporta* come una lista ed è implementato
in termini di una lista. Ma in se e per se *non* è vero che debba essere
una lista.
Io creerei la classe per i fatti suoi e dentro metterei un membro lista.
A quel punto offrirei nell'interfaccia della mia classe solo quello che
serve. 

 Ti dispiace essere più chiaro ?
La relazione di ereditarietà è un vincolo *estremamente* forte che lega
*tantissimo* due componenti.
Tipicamente il tuo elenco di comuni non *è* una *lista* di comuni inteso
in termini di libreria. E' implementato


crxor 666 ha scritto:

Mi fai l'esempio con il codice ?
Grazie della disponibilità.
Il punto è che sono tutti concetti che devo fare miei.

 Il punto è che sono tutti concetti che devo fare miei.
Ottimo proposito. Ci sono tanti libri che potrei consigliarti, purtroppo
non ne conosco alcuno che usa C# come esempio.

 No. Mi tengo lontano da C# come dalla peste.
Per quale ragione?
-- 
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it

 Per quale ragione?
Per una serie di ragioni. La prima è che non ho nessun motivo di
guardarlo. Occupa una nicchia che non mi interessa.
 
Non scrivo roba windows only (per cui la parte 'gui' per me non è
interessante, assieme a tutto quello che usa le librerie fatte da MS che
non sempre hanno un corrispettivo in mono). Per la roba lato server sono
svariati ordini di grandezza più produttivo con Python.
Per la roba dove mi interessa la velocità ho C++, C, Objective C o anche
OCaml. 
Detto tutto questo dovrei usare mono, che è poco curato su OS X. 
Se proprio ho bisogno di una cosa 'a la C#' posso usare Java. Non nel
classico luogo comune che C# è un clone di Java, ma semplicemente per il
fatto che occupano una parte di nicchia simile e hanno diverse
similitudini.
Insomma, non mi hanno ancora mostrato una cosa che farei meglio in C#
rispetto che negli altri linguaggi che conosco e uso. Fai te che
normalmente riesco pure a schivare Java.
-- 
blog:  
http://www.akropolix.net/rik0/blogs
 | Uccidete i filosofi,
site:  
http://www.akropolix.net/rik0/
      | tenetevi riso e
forum: 
http://www.akropolix.net/forum/
     | bacchette per voi.

guardarlo. 
Ah ecco, č che quel "mi tengo lontano" lasciava supporre una
conoscenza del linguaggio che avesse comportato l'allontanamento.
Cosě non č, se leggo bene quanto scrivi. Non conosci C#, ma non hai
voglia di conoscerlo perché non ne hai bisogno per il tipo di
applicazioni che scrivi.

 applicazioni che scrivi.
Ne ho un'infarinatura grezza. Normalmente prima di decidere se un
linguaggio mi interessa, guardo qualche tutorial, magari prendo un libro
(se ho una buona convinzione che mi interessi), vedo cosa ci si fa.
C# non ha mai passato questa fase.
No, non potrei vendermi per programmatore C#, insomma.
