Я делаю веб-сайт ASP.NET MVC, и у меня есть определенная группа связанных форм (назовем их Foo). Моя первая попытка организовать их состояла в том, чтобы иметь такую структуру:
Controllers/FooController.cs
... и иметь такие маршруты:
Foo/{type}/{action}/{id}
К сожалению, поскольку существует около 8 подтипов Foo, FooController
становился довольно большим и содержал собственную информацию о подмаршрутизации. Следующей моей попыткой было создать следующую структуру:
Controllers/Foo/Form1Controller.cs
Controllers/Foo/Form2Controller.cs
Controllers/Foo/Form3Controller.cs
...
С контроллером для каждой формы, что имеет для меня больше смысла, поскольку это в основном макет, который я использую для других форм в приложении.
К сожалению, я не могу найти простой способ сделать маршрут:
Foo/{controller}/{action}/{id}
...сопоставить с:
Controllers/Foo/{controller}Controller.cs
По сути, я хочу сказать ASP.NET MVC, что я хочу, чтобы все маршруты, соответствующие маршруту Foo, искали свои контроллеры в подпапке Foo
папки Controllers
. Есть ли простой способ сделать это с помощью маршрутизации или мне нужно написать свой собственный IControllerFactory
?
Спасибо.