Je suis nouveau à mvc. J'ai fait un bon développement avec Winforms et maintenant je travaille sur un projet MVC. Dans notre projet winforms, nous avons des contrôles standards tels qu'un contrôle de liste déroulante qui montrera tous les employés. Ce contrôle sait comment obtenir les employés et les afficher. Il expose une propriété qui donne l'employé sélectionné. Les formulaires ont juste besoin de mettre ce contrôle dessus et de l'utiliser. Maintenant, ma question est de savoir comment puis-je réaliser cela dans aps.net MVC (dans les vues). J'ai essayé des vues partielles mais ensuite comment puis-je exposer la valeur sélectionnée à la vue parentcontrôle partiel ASP.NET MVC
Répondre
Dans MVC, Views
ne doit pas contenir de logique autre que la logique d'affichage.
Le Controller
devrait être celui qui « sait comment obtenir les employés » ou créer un employé Model
qui passera alors à un View
qui sait comment afficher un employé, dans la plupart des cas, il serait strictement typé View
de type Employee
.
Je pense que c'est ce que vous essayez d'atteindre:
Say, dans votre modèle, vous avez un employé (ou une liste de, que ce soit ou):
Employee Employee { get; set; }
Ainsi, votre principale Voir devrait avoir ceci:
@Html.DisplayFor(Model => Model.Employee);
Mais, comment TEMPLATE-je, vous demandez-vous? Vous devriez prendre un peu de recul à ce stade et envisager de créer un nouveau ViewModel, un EmployeeViewModel (cela, dans votre esprit, devrait être votre "vue partielle").
Alors maintenant, vous aurez:
EmployeeViewModel Employee { get; set; }
Maintenant, créez un dossier dans vos vues/appelés à partager DisplayTemplates et créer EmployeeViewModel.cshtml. Pour être clair, vous aurez maintenant/Views/Shared/DisplayTemplates/EmployeeViewModel.cshtml
.
La première ligne de ce qui devrait lire:
@model YourNamespace.EmployeeViewModel
Et maintenant, vous pouvez simplement utiliser dans cette vue:
@Html.LabelFor(model => model.EmployeeName) // or whatever properties you have
Cela devrait être suffisant pour vous aider à démarrer.
PartialView vous convient. donc chercher du contenu avec le mot clé 'PartialView'
- 1. Contrôle de connexion partiel MVC
- 2. ASP.Net MVC jQuery Dialog Partiel
- 3. partiel ASP.NET MVC View soumettre
- 4. IIS asp.net mvc partiel? fichier télécharger
- 5. jQuery $ (document) .ready et ASP.NET MVC Partiel
- 6. Contrôle d'utilisateur MVC Asp.net ViewData
- 7. problème contrôle utilisateur asp.net mvc
- 8. Caching partiel du contrôle utilisateur ASP.NET par valeurs de variables
- 9. asp.net MVC partiel avec dynamique hérite de la classe?
- 10. ASP.NET MVC partiel dans une zone portative introuvable
- 11. Asp.net MVC. nom en double dans EditorTemplate ou @ Html.Action/partiel
- 12. Rendu partiel ASP.NET AJAX
- 13. Postback partiel ASP.NET 1.1
- 14. ASP.NET Ajax postback partiel et problème jQuery
- 15. Utilisation du contrôle ReportViewe dans asp.net mvc
- 16. Choix dynamique d'un contrôle utilisateur Asp.Net MVC
- 17. Screenshooting un contrôle wpf de asp.net MVC
- 18. asp.net mvc - contrôle ascx ou quoi?
- 19. contrôle serveur asp.net dans l'application mvc
- 20. ASP.NET MVC, Contrôle utilisateur individuel du cache
- 21. Analogue de contrôle LoginView dans ASP.NET MVC
- 22. asp.net contrôle mvc datettime LINQ pour vide
- 23. asp.net problème contrôle utilisateur mvc boucle foreach
- 24. ASP.NET MVC contrôle similaire aux formulaires
- 25. Contrôle du planificateur ASP.net MVC Day
- 26. rendu partiel d'un site ASP.NET
- 27. Comment utiliser le contrôle Asp.Net Chart dans Asp.Net MVC 3?
- 28. Mise en cache de contrôle d'utilisateur ASP.NET MVC 2
- 29. Retour de page partiel avec MVC
- 30. asp.net MVC
Essayer de faire les choses de la même manière que Winforms va être frustrant. Le web est une bête très différente. Essayez d'embrasser les différences plutôt que d'essayer de faire fonctionner MVC comme vous en avez l'habitude. Regardez les vidéos sur la droite de la page asp.net/mvc. –