2013-03-26 2 views
0

J'ai un C# MVC Model comme suit;Récupération des valeurs du modèle C# MVC

public class MyModel 
{ 
    ... 
    public IEnumerable<MyModel> allDetails { get; set; } 
    public int age { set; get; } 
    public string gender { set; get; } 
    public int schoolid { set; get; } 
    ... 
} 

veulent maintenant récupérer des données à partir allDetails. Comment puis-je le faire ?

Dans le controller;

model.allDetails = MyDetails.getAllDetails(); // Saves all details in the Model 

Maintenant, comment puis-je récupérer age, gender and school de ce model; Mon approche comme suit (mais son ne fonctionne pas)

model.allDetails.age; // This doesn't work 
+0

Quel est le code sur votre affichage? Êtes-vous sûr de transmettre des données dans 'allDetails' de votre vue? –

+0

La sortie ne va pas être utilisée dans la vue. J'utilise les valeurs du module pour continuer à traiter le contrôleur lui-même. –

Répondre

2

Dans votre model.allDetails de code est une liste (ou autre smth qui implémente IEnumerable), donc vous devez utiliser foreach ou d'une autre boucle, ou tout simplement d'abord() pour obtenir la première valeur de celle-ci. model.allDetails.First() âge

0

Je pense que vous avez obtenu votre desing pour la classe MyModel mal, vous devriez probablement avoir deux classes comme:

public class MyClass 
{ 
     ... 
     public IEnumerable<MyModel> allDetails { get; set; } 
     public int age { set; get; } 
     public string gender { set; get; } 
     public int schoolid { set; get; } 
     ... 
} 


public class MyModel 
{ 
    ... 
    public IEnumerable<MyClass> allDetails { get; set; } 
    ... 

} 

Où votre MyModel classe contiendra un IEnumerable de votre autre r classe qui contient des propriétés. Plus tard, vous pouvez remplir votre modèle via le contrôleur.

Dans votre classe MyModel actuelle, vous conservez IEnumerable de la classe elle-même, donc chaque objet de cette classe aura un autre IEnumerable et ainsi de suite. Vous pouvez également voir: C# Coding Conventions (C# Programming Guide) pour les noms de vos propriétés.

Questions connexes