Avatar billede danni03 Nybegynder
04. januar 2007 - 09:40 Der er 3 kommentarer og
1 løsning

Endnu et probem med reflection

Hej

Jeg anvender reflection på et object. Vi kan kalde det afdeling.

jeg har erklæret nogle feltattributter afdeling som bliver læst ind ved via fieldinfo objektet.

Afdeling har en generic list der indeholder typen medarbejder.

meningen er at hvis jeg når frem til at fieldinfo er en generic liste af nogle objector (uanset hvad type det er) vil jeg hente de fieldinfo på hver af de objekter. I det her tilfælde medarbejder objektet.

Problemet er at når jeg henter fieldinfo på den generiske liste af medarbejdere får jeg fat i Items, Count osv. hvilket i sig selv er godt nok, men jeg vil gerne have fat i de objecter listen indeholder og springe over alt andet information fra listen.

Hvem kender noget til det?
Altså hente obejekter ud fra en generic list via reflection uden at få overflødig data returneret om list objektet.
Avatar billede danni03 Nybegynder
04. januar 2007 - 09:45 #1
Jeg kalder 

object o = fi.GetValue(obj);


hvor "obj" er Afdeling
"fi" er Fieldinfo der indeholder en generic list af medarbejdere

object kommer til at indeholde "Count = 0"
Avatar billede hmortensen Nybegynder
04. januar 2007 - 11:00 #2
Kan du ikke blot caste til en collection, hvis det er en collection, og så gennemløbe den.
Avatar billede danni03 Nybegynder
04. januar 2007 - 11:26 #3
Det skulle ikke være nødvendigt når jeg har fat i listen allerede.

For at få fat i fieldinfo på et object skal man gøre det på typen af objectet.

Type t = o.GetType()

Men det er metadataen jeg har fat i her.

når jeg har fat i typen kan jeg også hente værdien af et fieldname, altså:

object o = fi.GetValue(obj);

hvor "obj" er Afdeling
"fi" er Fieldinfo der indeholder en generic list af medarbejdere

Denne fremgangsmåde fungerer på de objekter jeg selv opretter, men hvis det er en liste skal den behandles andeledes - jeg ved bare ikke hvordan endnu.
Avatar billede danni03 Nybegynder
05. januar 2007 - 15:18 #4
jeg fandt ud af det
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester