2009-10-25 2 views
1

Eh bien, question simple. Je travaille avec VS2008 sur une application Web ASP.NET qui a plusieurs listes de données. Pour le garder simple, appelons-le une galerie d'images. (Ce n'est pas le cas, mais les galeries d'images ont un exemple de modèle de données simple et compréhensible.) J'ai une table avec des images où chaque image a un nom et une catégorie. Les images sont regroupées par catégorie et sélectionnables par nom. Facile, non? :-)Comment changer http: //site/Image.aspx? Name = Cassandra en http: // site/Image/Cassandra?

J'ai créé http://site/ImageList.aspx qui accepte un paramètre optionnel (comme http://site/ImageList.aspx?category=Ladies) qui affichera une liste de toutes les images, ou toutes les images d'une catégorie spécifique. Et j'ai créé http://site/Image.aspx?name=Cassandra qui affichera une image spécifique.

Mais je voudrais l'utilisateur de voir des choses comme:

à la place. Et cela devrait être organisé à partir de l'application elle-même, et non en apportant des modifications au serveur IIS.

Alors, quelqu'un peut-il me fournir un aperçu pas à pas montrant comment créer une application Web comme celle-ci? (je sais qu'il doit faire quelque chose avec le routage et de UriTemplate. Je peux Google pour et essayé, mais la quantité d'information ajoute à la confusion.)

Malheureusement, je dois faire face à un problème supplémentaire : ASP.NET MVC est une bonne technique mais je dois travailler sans ces téléchargements supplémentaires. Je suis limité aux options que VS2008 propose par défaut. (En fait, Management dans toute leur « sagesse » m'a dit de ne pas l'utiliser.)

Répondre

3

un coup d'oeil à asp.net mvc

mais il est tout à fait possible d'utiliser le routage ASP.NET de façon traditionnelle (sous forme ASP.Net). Suivez les instructions étape par étape sur la façon de le faire here

+0

fait, ne peut pas introduire MVC dans mon projet, cependant. –

+1

avez-vous vérifié mon 2ème lien? –

+0

Juste remarqué après le commentaire. Bon lien! Exactement ce que je cherchais. –

1
+0

S'il vous plaît, suggérer quelque chose de plus ASP-NET-like ... –

+0

http://weblogs.asp.net/scottgu/archive/2007/02/26/tip-trick-url-rewriting-with-asp- net.aspx http://msdn.microsoft.com/en-us/library/ms972974.aspx – omoto

+0

Mieux ...... :) –

0

Mod Rewrite. Cependant, l'écriture d'URL doivent être inclus dans la plupart des cadres, et je vous suggère d'utiliser les :)

1

Le .NET Framework 4 is going to support Routes pour WebForms (similaire au routage MVC) Jusque-là, vous devez utiliser les techniques de réécriture standard.

+0

Le .Net 3.5sp1 Déjà faire –

+1

Ici vous allez http: // chriscavanagh.wordpress.com/2008/03/11/aspnet-routing-goodbye-url-rewriting/ –

0

Vous parlez de réécriture d'URL. J'ai utilisé Madgeek RedirectModule, qui lit les règles de web.config et redirige/réécrit en conséquence.

Il convient de noter que vous devrez configurer IIS pour envoyer toutes les requêtes via le moteur .NET si vous souhaitez rediriger ou réécrire sur des dossiers ou des extensions de fichiers autres que.ASPX

Vous trouverez un guide complet de réécriture d'URL ici: http://weblogs.asp.net/scottgu/archive/2007/02/26/tip-trick-url-rewriting-with-asp-net.aspx

+0

J'ai deux limitations: Je dois utiliser VS2008 seulement. (Heureusement avec SP1.) Donc pas de téléchargements supplémentaires. Et tout ce qui doit être configuré doit être fait depuis l'application Web. La modification de la configuration IIS est considérée comme "mauvaise" par la gestion. –