C# ASP.NET MVC 5-具有属性路由、动态控制器和操作方法的自定义URL
NET MVC 5**我想要这样的URL 我知道我可以使用属性路由实现它,如下所示C# ASP.NET MVC 5-具有属性路由、动态控制器和操作方法的自定义URL,c#,asp.net-mvc,asp.net-mvc-5,asp.net-mvc-routing,C#,Asp.net Mvc,Asp.net Mvc 5,Asp.net Mvc Routing,NET MVC 5**我想要这样的URL 我知道我可以使用属性路由实现它,如下所示 [RoutePrefix(".Net")] [Route("{action=Index}")] public class NetController : Controller { [Route(".Net-Core")] public ActionResult NetCore() { return View(); } } 但是我想动态地生成控制器和动作方法。并使
[RoutePrefix(".Net")]
[Route("{action=Index}")]
public class NetController : Controller
{
[Route(".Net-Core")]
public ActionResult NetCore()
{
return View();
}
}
但是我想动态地生成控制器和动作方法。并使用属性路由。
我想在URL中使用点(.),
第二件事,我希望URL非常简单,只有3个部分,如 DomainName/CategoryOfArticle/ArticleName 与URL DomainName-BornToProgram.com、CategoryofArticle-.Net、ArticleName-.Net核心相同 总之,我想让管理员决定他可以每月或每天提交的新文章的URL部分。 类似于文章的类别(示例中为(.Net) 然后是文章的名称(.Net Core、.Net Framework)
管理员希望完全控制URL,因为属性用于将元数据附加到类,所以它是在运行时进行的。但即使可以,将它们读取并转换为
Route
实例的属性路由框架也不太可能正常工作
如果需要创建动态驱动的路由,解决方案是添加URL和/或指定它们在运行时应该引用的控制器。您应该像示例中那样缓存URL列表,但没有理由不调整缓存,以便在应用程序中添加单个URL时,可以将它们逐个添加到缓存中(一次性将它们添加到缓存和数据源中,以便它们立即和永久可用).动态生成控制器和操作方法是什么意思?如本问题所述