2009-04-28 7 views
0

dans mon application MVC J'ai un contrôleur (ProjectController) qui a une action (créer). La fonction create accepte un projectEntity (composant 3d datalayer personnalisé) en tant que paramètre. L'infrastructure lie automatiquement les valeurs de formulaire entrées à l'objet projectEntity.ASP.NET MVC Comment spécifier des paramètres supplémentaires dans la méthode POST?

Ceci est la signature créer fonction:

<AcceptVerbs(HttpVerbs.Post)> _ 
Function Create(<Bind(Exclude:="Id")> ByVal projectToCreate As BLL.projectEntity) As ActionResult 
End Function 

J'ai un champ appelé sous la forme 'requestDate'. Comment puis-je spécifier la méthode POST afin qu'il passe l'objet projectToCreate et le 'requestDate' supplémentaire du formulaire?

Répondre

0

simplement ajouter vos paramètres 1-1 supplémentaires après votre premier (objet) paramètre ...

_ 
Function Create(ByVal projectToCreate As BLL.projectEntity, ByVal requestData As Nullable(Of Int)) As ActionResult 
End Function

Je généralement définir les types comme paramètres d'entrée à NULLABLE. Seul le premier objet sera mappé sans les autres noms de paramètres ... si vous avez une signature avec say (objet A, objet B) dans votre formulaire, vous pouvez utiliser name = "someprop" qui sera automappé à A.someprop, ou vous pouvez utiliser name = "B.someprop" et il automap, à la propriété dans le nom.

Questions connexes