2008-11-27 6 views
15

Une partie de mes ressources cartes d'application stockées dans un certain nombre d'emplacements sur les URL web comme ceci:Chemin du fichier comme argument de route MVC

http://servername/files/path/to/my/resource/ 

L'emplacement des ressources est calquée sur les chemins de fichiers et par conséquent il peut y avoir un niveau illimité d'imbrication. Est-il possible de construire une route MVC qui correspond à cela afin que je reçoive le chemin dans son intégralité passé dans mon contrôleur? Soit en tant que chaîne unique ou éventuellement en tant que tableau de style params de chaînes.

Je suppose que cela nécessite une correspondance sur le mot-clé files, suivi d'une sorte de caractère générique. Bien que je ne sache pas si MVC supporte cela.

Répondre

26

Une route comme

"Files/{*path}" 

prendra le chemin en une seule chaîne. Le * le désigne comme un mappage générique et il consommera l'URL entière après "Files/".

4

Pour plus d'informations sur la fonction de routage de ASP.NET, s'il vous plaît voir MSDN:

http://msdn.microsoft.com/en-us/library/cc668201.aspx

Et pour les paramètres « fourre-tout » que vous souhaitez utiliser, consultez la section sous la rubrique « Gestion d'un nombre variable des segments ".

+0

Super lien, merci! –

Questions connexes