小编Dav*_*vid的帖子

ASP .Net Core在运行时改变路由

我的问题:我有多个控制器类,我希望他们的路由改变取决于外部配置文件中的某个值(让我们称之为ID)(可以更改).该ID不是常量,它是在应用程序启动时生成的.

[Route("api/projects/" + idForTest1FromConfigFile]
public class Test1Controller : Controller 
{
    public IActionResult Index()
    {
        return View();
    }
}
Run Code Online (Sandbox Code Playgroud)

更新 然后我有Test2Controller,它与Test1Controller基本相同,但返回不同的视图

[Route("api/projects/" + idForTest2FromConfigFile]
public class Test2Controller : Controller 
{
    public IActionResult Index()
    {
        return View();
    }
}
Run Code Online (Sandbox Code Playgroud)

所以我在配置文件中说:

Test1 : 123
Test2 : 456
Run Code Online (Sandbox Code Playgroud)

所以当我调用https:// localhost:44391/api/projects/123/Index时我想从Test1Controller获取索引页面,当我调用https:// localhost:44391/api/projects/456/Index我想要从Test2Controller获取索引页面

有什么方法可以做到这一点?谢谢

c# asp.net .net-core asp.net-core asp.net-core-2.0

2
推荐指数
2
解决办法
1300
查看次数

标签 统计

.net-core ×1

asp.net ×1

asp.net-core ×1

asp.net-core-2.0 ×1

c# ×1