代码之家  ›  专栏  ›  技术社区  ›  mhmd

将URL字符串作为参数传递给MVC控制器

  •  4
  • mhmd  · 技术社区  · 16 年前

    我需要将完整的网站URL传递给我的控制器操作,如下所示:

    http://myweb/controller/action/http://blabla.com/dir2
    

    如何创建将此参数传递给操作的新路由?

    2 回复  |  直到 8 年前
        1
  •  6
  •   Konstantin Tarkus    16 年前
    routes.MapRoute("Name", "{controller}/{action}/{*url}");
    

    其他信息:

        2
  •  4
  •   tvanfosson    16 年前

    将其作为参数传递。

    <%= Html.ActionLink( "Link", 
                         "MyAction",
                         "MyController",
                         new { url = "http://blah.com/blah" },
                         null ) %>
    

    应生成如下链接:

    <a href='/MyController/MyAction?url=http://blah.com/blah'>Link</a>
    

    您的操作如下:

    public ActionResult MyAction( string url )
    {
       ...
    }