rouleau avec moi et imaginez l'exemple suivant:Modélisation plus complexe (réelle)?
Public ViewResult GiveMeFruit(int personId, string personName, int personAge, int fruitId){
Person person = PersonService.GetPerson(personId);
person.Name = personName;
person.Age = age;
person.Fruits.Add(FruitService.GetFruit(fruitId));
ViewData.Person = person;
View(ViewData);
}
Cela devrait être fait mieux comme si
Public ViewResult GiveMeFruit(Person person, IFruit fruit){
person.Fruits.Add(fruit);
ViewData.Person = person;
View(ViewData);
}
J'ai essayé modelbinding plus tôt, mais bon je ne pouvais pas le faire fonctionner correctement. Tous les exemples vous montrent comment cela fonctionne avec un type extrêmement simple, jamais avec plusieurs types complexes. Comment le modelbinder pourrait-il savoir quel champ est pour quel type? Et s'il y a un fruit1 et un fruit2? Comment le classeur sait-il quel type de béton utiliser pour mon interface IFruit? En outre je me demande comment cela fonctionnerait si je veux donner un fruit IEnumerable à ma personne.
N'allons pas à camelot c'est un endroit idiot. C'est seulement un modèle .. –