2010-12-17 5 views
1

J'ai une page aspx Test.aspx. Il gère les requêtes comme Test.aspx? First = valeur1 & Deuxième = valeur2 & troisième = value3 Comment puis-je utiliser le routage pour rediriger cette URL pour TestController/MonAction? Tout d'abord = valeur1 & Deuxième = valeur2 & troisième = value3aspx url à l'action du contrôleur mvc

Je sais que je peux créer un aspx et effectuer une redirection dans le chargement de la page. Mais semble moche et je pense que cela peut être fait avec un itinéraire personnalisé.

Quel était essayé passe: this solution

mais cela n'a pas fonctionné pour moi. Je me souviens, que Test.aspx ne devrait pas être sur un disque. Je ne l'ai pas, et le routage ne fonctionne toujours pas. N'avez aucune idée de ce qui peut causer ce problème.

Répondre

2

Avez-vous essayé d'ajouter une route comme ce qui suit:

routes.MapRoute(
    "Test", 
    "Test.aspx", 
    new { controller = "TestController", action = "Show" } 
); 

Rappelez-vous que la route ne fonctionnera pas si le fichier Test.aspx est toujours sur le disque.

Aussi, idéalement, vous voudriez avoir une redirection permanente afin que les liens du moteur de recherche, etc., soient mis à jour pour pointer vers vos nouvelles URL.

+0

Le test d'unité déclenche une exception comme MvcContrib.TestHelper.AssertionException: Test/Show attendu mais était Test.aspx. –

+0

En fait, je le routage peut fonctionner pour les fichiers existants ... avez-vous regardé cette documentation? http://msdn.microsoft.com/en-us/library/system.web.routing.routecollection.routeexistingfiles.aspx –

+0

Le lien ne fonctionne pas pour moi, pouvez-vous, s'il vous plaît, poster ce qu'il ya dans un article séparé? –

Questions connexes