【问题标题】:Dynamic Routing in ASP.NET MVCASP.NET MVC 中的动态路由
【发布时间】:2019-02-15 22:10:15
【问题描述】:

我在 localhost 中使用过这个路由,它工作正常:

routes.MapRoute(
    name: "Default",
    url: "{controller}/{action}/{id}",
    defaults: new { controller = "Authentication", action = "Login", id = UrlParameter.Optional }
);

但是当我部署到具有这种结构的服务器时:

servername/folder/Controller/Action

样式和页面出现 404 错误。

我想动态更改本地主机和服务器之间的路由

【问题讨论】:

  • 你的文件夹结构在 localhost 上是什么样子的?它在服务器上是什么样子的?
  • 结构相同。我刚刚使用这个 estructure servername/Controller/Action 在同一台服务器上部署了解决方案,它工作正常。但我必须使用这个:servername/folder/Controller/Action。
  • 然后在 localhost 上镜像该文件夹结构。

标签: c# asp.net-mvc-5 routing


【解决方案1】:

样式表不使用路由,它们位于您在 _layout 中设置的设置路径中.

如果您想进行动态路由,那么您需要一个占位符,并且您需要在运行时提供该值。 文件必须存在于与路由匹配的物理路径中

routes.MapRoute(
  name: "Default",
  url: "{servername}/{folder}/{controller}/{action}/{id}",
  defaults: new { servername = "servername", folder = "foldername", 
     controller = "authentication", action = "Login", id = UrlParameter.Optional }
   };

【讨论】:

    猜你喜欢
    • 2023-03-24
    • 2012-07-23
    • 2011-02-01
    • 2011-01-07
    • 1970-01-01
    • 2017-01-04
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多