MVC: passe le paramètre à voir?
MVC newbie question:
Je vais chercher une URL de la forme go/{mainnav}/{subnav}
que j'ai réussi à acheminer à la GoController
classe, la méthode:
public ActionResult Index(string mainnav, string subnav) {
return View();
}
Donc bon. Mais maintenant, je veux la vue, pour renvoyer différentes HTML, en fonction des valeurs de mainnav ou subnav. Plus précisément, à l'intérieur d'un bloc javascript, je veux inclure la ligne:
myobj.mainnav = [value of mainnav parameter];
et, seulement si subnav n'est pas null ou vide:
myobj.subnav = [value of subnav parameter];
Comment faites-vous passer ces paramètres à une page aspx qui ne dispose pas d'un code-behind?
source d'informationauteur Shaul Behr | 2011-01-27
Vous devez vous connecter pour publier un commentaire.
Vous utilisez un
ViewModel
classe de transfert de données:Votre méthode d'action sort alors
Cela signifie que votre vue fortement typée:
De votre point de vue, la sortie des données comme suit:
Une solution alternative si vous utilisez MVC3, serait d'utiliser la dynamique
ViewBag
:qui serait accessible dans la page, comme ça:
Cependant, je vous recommande de lire sur javascript discret et voir si vous pouvez améliorer votre conception pour éviter ce problème spécifique.
Si vous utilisez MVC3 je suggère de transmettre des valeurs dans le
ViewBag
.ensuite sur votre page d'affichage, qui permet de définir le JavaScript et ajouter de la valeur.
si vous n'avez pas de MVC 3 si vous utilisez
ViewData["MainNav"]
), pour stocker votre valeur a le même effet.Avez-vous essayez d'accéder aux paramètres de la Demande, à votre avis?
c'est à dire
ou
Travaille en MVC
je suis en utilisant démarche suivante:
ViewModel.class:
Dans la Vue principale:
Alors dans une vue partielle:
Si je comprends que cela peut être une solution:
Dans la Vue Html, vous pouvez utiliser la Vue
et après