Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 是否从控制器内部向控制器添加新路由? 假设我在ASP.NET内核中有一个CMS 假设根URL是test.net 假设我以管理用户的身份添加新页面test.net/docs/doc1.html_C#_Controller_Asp.net Core - Fatal编程技术网

C# 是否从控制器内部向控制器添加新路由? 假设我在ASP.NET内核中有一个CMS 假设根URL是test.net 假设我以管理用户的身份添加新页面test.net/docs/doc1.html

C# 是否从控制器内部向控制器添加新路由? 假设我在ASP.NET内核中有一个CMS 假设根URL是test.net 假设我以管理用户的身份添加新页面test.net/docs/doc1.html,c#,controller,asp.net-core,C#,Controller,Asp.net Core,更新数据库的API调用完成后,我希望能够导航到此URL,并将此URL路由到Contentcontroller 如何正确配置“catch all”控制器,我指的是从URL获取路径并从数据库获取页面的控制器?我的目标是允许处理任何路径。没有固定路径,如果DB说在1/2/3/4/5.html中有一些内容,我希望它由content控制器处理 无论如何,MVC必须在这里继续工作是很重要的。因此,我有固定的API路由,但非API URL-s将由一个公共内容控制器捕获和处理。您的所有内容是否都可以放在一个文件

更新数据库的API调用完成后,我希望能够导航到此URL,并将此URL路由到
Content
controller

如何正确配置“catch all”控制器,我指的是从URL获取路径并从数据库获取页面的控制器?我的目标是允许处理任何路径。没有固定路径,如果DB说在
1/2/3/4/5.html中有一些内容,我希望它由
content
控制器处理


无论如何,MVC必须在这里继续工作是很重要的。因此,我有固定的API路由,但非API URL-s将由一个公共
内容
控制器捕获和处理。

您的所有内容是否都可以放在一个文件夹中,例如内容?在这种情况下,您可以从Content controller中使用“全包”(通配符)路由方法:

public class Content : Microsoft.AspNetCore.Mvc.Controller
{
    [Route("/Content/{*catchall}")]
    public IActionResult Index(string catchall)
    {
        // catchall = 1/2/3/4/5.html    
        return View();
    }
}

@米基德1。阅读有关ASP.NET Core中路由的所有信息。构建自定义路由器。我设法创建了静态路由。IDK如何在应用程序启动后添加路由。完全正确!我使用了
[Route({*catchall}”)]
,甚至不需要单独的文件夹。它仍然正确地匹配API调用。我希望我知道那些“神奇的弦”在哪里被解释。。。