从这里我对在 ASP.NET MVC 中设置备用控制器文件夹位置有了一点了解。这是在 ASP.NET MVC 中设置备用控制器文件夹位置的 url
他们指导我们,我们可以更改命名空间,也可以在例程代码中指定命名空间,通过这些方式我们可以解决它,但上面的链接没有显示如何在其他文件夹位置更改或存储与控制器相关的 .cs 文件。
假设我想将控制器存储在根目录中名为mycontroller的文件夹中,那么我需要做什么。请指导我。谢谢
更新
您可以使用路由来执行此操作,并将控制器保存在单独的命名空间中。MapRoute 允许您指定哪个命名空间对应于路由。
例子
鉴于此控制器
namespace CustomControllerFactory.Controllers
{
public class HomeController : Controller
{
public ActionResult Index()
{
return new ContentResult("Controllers");
}
}
}
namespace CustomControllerFactory.ServiceControllers
{
public class HomeController : Controller
{
public ActionResult Index()
{
return new ContentResult("ServiceControllers");
}
}
}
And the following routing
routes.MapRoute(
"Services",
"Services/{controller}/{action}/{id}",
new { controller = "Home", action = "Index", id = UrlParameter.Optional },
new string[] { "CustomControllerFactory.ServiceControllers" } // Namespace
);
routes.MapRoute(
"Default", // Route name
"{controller}/{action}/{id}", // URL with parameters
new { controller = "Home", action = "Index", id = UrlParameter.Optional },
new string[] { "CustomControllerFactory.Controllers"} // Namespace
);
您应该期待以下响应
/Services/Home
ServiceController
/Home
Controllers