2008-12-09 6 views
1

Je suis en un tas d'applications sur discountasp.net avec l'addon sous-domaine. Étant donné que je ne peux pas avoir plusieurs sites IIS avec l'hébergement partagé, j'ai également écrit un module HTTP qui permet aux sites des sous-dossiers de fonctionner comme s'ils étaient exécutés dans le répertoire racine. Ainsi, par exemple, au lieu d'héberger mon blog sur dandoes.net/blog, je peux l'héberger sur blog.dandoes.net (qui est en fait en fait dandoes.net). Cela a fonctionné jusqu'à maintenant, quand j'essaie de l'utiliser avec MVC.Comment tromper MVC dans des liens de rendu basés sur un chemin virtuel différent?

Le HtmlHelper génère ses URL sur la base du chemin virtuel de la demande plutôt que les données de chemin d'accès dans l'URL. Donc, si je suis sur blog.dandoes.net et je veux créer un lien vers blog.dandoes.net/Samples, je pourrais avoir ce code:

<%=Html.ActionLink("Samples", "Index", "Samples")%> 

Dans des circonstances normales, cela générerait le blog url. dandoes.net/Samples, mais à la place, il génère blog.dandoes.net/Blog/Samples car le répertoire virtuel est/Blog.

Je pourrais probablement prendre 5 minutes et écrire quelque chose de vraiment aki faire ce que je veux, mais je pense que ce serait vraiment intéressant si je pouvais obtenir le framework MVC pour faire ce que je veux.

Alors, est-il possible que je pourrais l'obtenir pour rendre les urls correctes?

Répondre

1

L'assistant HTML est juste une classe qui retourne une chaîne à votre code. Tout ce que vous devez faire est d'écrire votre propre classe d'assistance pour sortir la chaîne dans le format dont vous avez besoin.

Questions connexes