2010-11-23 6 views
0

J'ai créé une application de blog avec ASP.NET MVC et MSSQL. Je dois dire, j'ai vraiment apprécié le processus de création d'une application avec ASP.NET MVC. Nettoyer les URL (avec routage d'URL), Aucun affichage, etc. MAIS je me demandais comment cela aurait-il été fait si je choisissais le codage de style de formulaire Web? Est-ce que l'aspx serait créé à la volée pendant que je crée un article (prenez cette url par exemple: http://weblogs.asp.net/scottgu/archive/2010/10/06/announcing-nupack-asp-net-mvc-3-beta-and-webmatrix-beta-2.aspx) bien que l'URL ne soit pas propre mais reste logique. Si oui, qu'en est-il de son fichier cs correspondant? Si non, comment l'URL est-elle si propre?Comment créer un blog dans ASP.NET et non ASP.NET MVC

Serait bien si quelqu'un jeter un peu de lumière sur la façon dont il est fait dans ASP.NET.

Merci, Faraaz.

+1

est-ce votre question sur « comment créer un blog "ou" comment avoir de belles URL "? – Shoban

Répondre

1

Un blog dans ASP .NET aurait été fait de la même manière. L'idée est d'utiliser un fichier et une réécriture d'URL. IIS7 a une réécriture d'URL intégrée, mais pour IIS6, vous pouvez utiliser quelque chose comme ISAPI_Rewrite pour gérer les fichiers de style .htaccess (ce qui est utilisé par Apache). ASP.NET MVC gère tout cela pour vous dans son routage, mais vous pouvez le faire vous-même en utilisant un outil de réécriture d'URL. La différence est que pour MVC, l'application gère la réécriture mais ISAPI_Rewrite, les réécritures IIS sont effectuées par le serveur. Cela peut changer une URL comme http://mysite.com/something/other à http://mysite.com/file.asp?p1=something&p2=other.

Le deuxième lien est uniquement interne au serveur (il ne modifie pas réellement l'URL dans la barre d'adresse de l'utilisateur). Dans le cas d'une URL comme sur le blog de Scott, vous pouvez stocker le bit 'announcing-nupack-asp ...' dans une base de données dans la ligne article afin que votre page d'article de blog ait quelque chose à rechercher. Les fichiers n'existent pas réellement sur le serveur mais la réécriture transmet toutes les demandes à un fichier existant avec des paramètres.

Notez que cette technique est courante pour de nombreux sites différents - et pas seulement pour les blogs. Notez l'URL de dépassement de pile, les URL Twitter, etc.

MSDN a un ancien article sur URL Rewriting in ASP .NET, avec quelques exemples de filtres que vous pouvez utiliser.

+0

est logique .. merci beaucoup pour les liens. mais, je vois la barre d'état d'IE affiche l'URL réécrite quand je passe la souris à une URL dans le blog. comment cela est-il fait? – nfa379

2

Si vous utilisez .NET 4, vous pouvez utiliser MapPageRoute pour réaliser les URL propres avec des formulaires Web normaux.

routes.MapPageRoute("MySuperCleanRoute", "some/clean/url", "~/ActualPage.aspx"); 

Avec l'ajout de MapPageRoute, vous n'avez plus le sentiment « que je devrais utiliser ASP.NET MVC parce que je veux URL propre de ».

Choisissez ASP.NET MVC si vous aimez le motif. Si votre utilisée pour les formulaires Web, l'utiliser - et utiliser MapPageRoute pour obtenir URL propre (ou utiliser une URL Module Réécriture si < = .NET 4)