![](/img/trans.png)
[英]ASP.NET Core 3.1 : how to route to a controller in a sub folder
[英]Asp.net Core: Route Controller with Folder Name
我的控制器在一些文件夹中,在编写他们的路由时,我手动添加了路由属性。 像下面这样:
[Route("api/myfolder1/[controller]")]
[ApiController]
public class FormulaController : ControllerBase
{
....
}
是否有解决手动将文件夹名称添加到控制器中的路由属性的解决方案? 谢谢
正如@poke 建议的那样,使用区域。
步骤1。 将您的控制器移动到
Areas
文件夹。
第2步。 将区域路由添加到
Startup.cs
app.UseEndpoints(endpoints =>
{
endpoints.MapControllerRoute(
name: "myArea",
pattern: "api/{area:exists}/{controller=Home}/{action=Index}/{id?}");
endpoints.MapControllerRoute(
name: "default",
pattern: "{controller=Home}/{action=Index}/{id?}");
});
第三步。 将 [Area] 属性添加到您的 controller
[Area("myfolder1")]
public class FormulaController : Controller
{
public IActionResult Index()
{
return Json("Helll formula/index");
}
}
测试截图
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.