web-dev-qa-db-fra.com

Comment cachez-vous l'extension de fichier dans une URL en utilisant ASP.NET WebForms?

Je voudrais supprimer l'extension .aspx de mes pages Web. Une des raisons est que je ne suis pas sûr de m'en tenir à la technologie ASP.NET WebForms. Comment faites-vous?

4
user6456

Les URL entrantes sont faciles - il suffit de saisir un outil tel que RL Rewriter , de créer une règle pour mapper les demandes entrantes ne disposant pas de .aspx pour inclure l'aspx dans le traitement de la demande et vous avez terminé.

Le problème, cependant, est les URL sortantes. Votre site/application génère des URL partout, et chacune d'elles contient un lien vers quelque chose . Aspx et quel est le format même que vous essayez d'éviter. . Vous pouvez soit réécrire l’ensemble de votre application pour ne pas inclure le fichier .aspx, soit vous pouvez ajouter quelque chose dans le pipeline pour filtrer celles-ci en dehors des pages avant leur envoi à l’utilisateur.

Encore une fois, URL Rewriter peut le faire , mais il faut un certain temps pour bien comprendre les règles. Une autre approche assez courante consiste à simplement écrivez votre propre httpModule et effectuez le traitement vous-même.

N'oubliez pas que tout utilitaire qui réécrit le contenu d'une page sortante peut entraîner des problèmes de mise en cache côté serveur.

3
Dave Wise