Думаю, вам нужен обработчик сегментированных URL {*queryvalues}
для маршрутизации.Символ * указывает на совпадение в стиле подстановки одного или нескольких сегментов, разделенных символом "/".
. Чтобы отобразить физический путь, вы можете использовать это, чтобы добавить маршрут к вашему Global.asax.cs:
routes.MapPageRoute(
"Projects", // Route name
"projects/{projectId}/{*path}", // Route url format
"~/ProjectFolder/{projectId}/{path}" // Path to files
);
Если вы хотите получить путь к действию контроллера MVC, а затем что-то с ним сделать, вы можете использовать MapRoute:
routes.MapRoute(
"Projects", // Route name
"projects/{projectId}/{*path}", // Route url format
new { controller = "Project", action = "Index" } // Defaults
);
Затем создать ProjectController
ив действии Index
восстановите RouteData.Values["projectId"]
и RouteData.Values["path"]
и сделайте с ними все, что вам нужно ...