Путь к файлу в качестве аргумента маршрута MVC

Часть моего приложения отображает ресурсы, хранящиеся в нескольких местах, на веб-URL, например:

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

Расположение ресурсов моделируется после путей к файлам и, как результат, может быть неограниченный уровень вложенности. Можно ли построить маршрут MVC, который соответствует этому, чтобы я смог передать весь путь в мой контроллер? Либо как отдельная строка, либо, возможно, как массив строк параметров params.

Я предполагаю, что для этого требуется соответствие ключевому слову файлов, за которым следует какой-то шаблон. Хотя я не знаю, поддерживает ли MVC это.

Ответы

Ответ 1

Маршрут, как

"Files/{*path}"

получит путь как одну строку. * обозначает его как подстановочное сопоставление, и он будет использовать весь URL после "Files/".

Ответ 2

Дополнительные сведения о функции маршрутизации ASP.NET см. в MSDN:

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

И для параметров "всех ловушек", которые вы хотите использовать, см. раздел "Обработка числа сегментов переменной".