2012-10-16 14 views
7

Sto provando a leggere i valori da System.Web.Helpers.DynamicJsonObject. Riesco a vedere i valori nel debugger ma non riesco a capire come accedervi. Ho provato questoLettura dei valori da un oggetto dinamico C#

item.GetType().GetProperty("batch_id").GetValue(item, null);

ma quando provo che ottengo questa risposta nel debugger "item.GetType(). GetProperty (" batch_id ")' è nullo"

Ho allegato una foto dal mio soluzione enter image description here

Grazie, -Tesh

risposta

24

E 'dinamico in modo solo si può fare:

string batchId = item.batch_id; 

Se per qualche motivo avete il nome della proprietà in un string, e non lo sai al momento della compilazione, l'operatore di indicizzazione funziona:

string value = item["batch_id"]; 
+0

Grazie driss, ha funzionato perfettamente. Sono felice che tu abbia menzionato l'oggetto ["batch_id"], perché quella era la mia prossima domanda :). – MindGame

+1

Per favore, puoi spiegare in quale caso i nomi delle proprietà sarebbero in "stringa" e in tal caso come proprietà normali? –

1

Non funziona perché sono campi, non proprietà. E, sì, è dinamico, quindi puoi usare solo item.batch_id.

+0

Eviterei l'altra risposta invece di pubblicarla. –

+0

Grazie. Che funzioni. – MindGame

Problemi correlati