Itérer objet dynamique
En utilisant mvc-je obtenir des valeurs de ce type pour éviter les déclarations de classe et changement de routeur.
public dynamic Create([FromBody] dynamic form)
{
var username = form["username"].Value;
var password = form["password"].Value;
var firstname = form["firstname"].Value;
...
J'aime parcourir toutes les valeurs et de les vérifier null ou vide.
s/"j'aime"/"je voudrais, et je ne sais pas comment" ?
Vous souhaitez éviter les déclarations de classe? Pourquoi?
Peut-être son meilleur. Je ne suis pas sûr au sujet de vos intentions. Go for foreach(var valeur dans la forme).
Utiliser les DTO pour obtenir l'entrée à partir de points de Vue. Il est facile à mettre en œuvre
Quels sont exactement vous souhaitant effectuer une itération sur? Les propriétés de votre objet ou a-t-elle un indexeur et vous voulez juste pour vérifier toutes les choses qui sont indexés?
Vous souhaitez éviter les déclarations de classe? Pourquoi?
Peut-être son meilleur. Je ne suis pas sûr au sujet de vos intentions. Go for foreach(var valeur dans la forme).
Utiliser les DTO pour obtenir l'entrée à partir de points de Vue. Il est facile à mettre en œuvre
Quels sont exactement vous souhaitant effectuer une itération sur? Les propriétés de votre objet ou a-t-elle un indexeur et vous voulez juste pour vérifier toutes les choses qui sont indexés?
OriginalL'auteur MR.ABC | 2014-08-19
Vous devez vous connecter pour publier un commentaire.
Bien, si vous obtenez un json à partir de l'argument, vous pouvez convertir l'objet d'un dictionnaire, par exemple:
Vous pourriez également de la boucle entre les touches:
Devraient ai testé ensuite, parce qu'elle lève une exception.
OriginalL'auteur Felipe Oriani
C'est assez vieux, mais je suis tombé sur ce et je me demande pourquoi la suite n'a pas été proposé:
Probablement à cause de cela: le Message "Impossible de convertir le type" <>f__AnonymousType0<string,string>' pour 'Système.Les Collections.Génériques.IDictionary<string,object>'" chaîne de caractères.
si vous recevez ce message, vous n'êtes pas de la coulée à l'encontre d'un objet dynamique, mais au lieu d'essayer de jeter contre un type anonyme qui n'est pas la même chose.
J'ai couru à la déclaration de 'dynamique', tout comme dans l'OP. J'ai fini la conversion de ma dynamique de json avec JsonConvert et puis JsonConverting mon json d'un Dictionnaire<string, object>. Cela fonctionne bien pour moi.
OriginalL'auteur tjscience
Vous pouvez utiliser JavaScriptSerializer et dynamique de l'objet:
Par exemple, si vous souhaitez faire une boucle à travers
myDynamicObject["users"]
:OriginalL'auteur