Asp.Net MVC: Comment puis-je obtenir url virtuelle pour le régulateur de courant/affichage?
Est-il possible d'obtenir l'itinéraire/url virtuelle associée à l'action d'un contrôleur ou d'un point de vue? J'ai vu que l'Extrait 4 a ajouté LinkBuilder.BuildUrlFromExpression helper, mais il n'est pas très utile si vous souhaitez l'utiliser sur le maître, car le contrôleur peut être de type différent. Toutes les pensées sont appréciés.
Vous devez vous connecter pour publier un commentaire.
J'essaie toujours de mettre en œuvre la solution la plus simple qui répond aux exigences du projet. Comme Enstein a dit, "Rendre les choses aussi simples que possible, mais pas plus." Essayez ceci.
Cela a fonctionné pour moi:
<%= this.Url.RouteUrl(this.ViewContext.RouteData.Values) %>
Il renvoie l'Url en tant que tel;
/Home/About
Peut-être il ya un moyen simple de revenir sur le parcours réel de la chaîne?
Vous pouvez obtenir des données à partir de ViewContext.RouteData. Ci-dessous sont quelques exemples de la façon dont l'accès (et l'utilisation) que de l'information:
///Ceux-ci sont ajoutés à mon viewmasterpage, viewpage, et viewusercontrol classes de base:
///Certaines méthodes d'extension que j'ai ajouté à la classe UrlHelper.
Vous pouvez utiliser <%= Url.Action(une action, un contrôleur, valeurs) %> construire l'URL à partir de l'intérieur de la page maître.
Faites-vous cela peut-être mettre en évidence un onglet de la page en cours ou quelque chose?
Si oui, vous pouvez utiliser ViewContext de la vue et d'obtenir les valeurs dont vous avez besoin.
J'ai écrit une classe d'assistance qui me permet d'accéder aux paramètres de la route. Avec cette aide, vous pouvez obtenir le contrôleur, de l'action, et tous les paramètres passés à l'action.