zoukankan      html  css  js  c++  java
  • 在ASP.NET MVC 中获取当前URL、controller、action(转)

    URL的获取很简单,ASP.NET通用: 

    【1】获取 完整url (协议名+域名+虚拟目录名+文件名+参数) 

    string url=Request.Url.ToString();

    【2】获取 虚拟目录名+页面名+参数: 

    string url=Request.RawUrl;

    (或 string url=Request.Url.PathAndQuery;)

    【3】获取 虚拟目录名+页面名:

    string url=HttpContext.Current.Request.Url.AbsolutePath;

    (或 string url= HttpContext.Current.Request.Path;)

    【4】获取 域名:

    string url=HttpContext.Current.Request.Url.Host;

    【5】获取 参数: 

    string url= HttpContext.Current.Request.Url.Query; 

    【6】获取 端口:

    Request.Url.Port

    二、当前controller、action的获取 

    RouteData.Route.GetRouteData(this.HttpContext).Values["controller"] 

    RouteData.Route.GetRouteData(this.HttpContext).Values["action"] 

    或 

    RouteData.Values["controller"] 

    RouteData.Values["action"] 

    如果在视图中可以用 

    ViewContext.RouteData.Route.GetRouteData(this.Context).Values["controller"] 

    ViewContext.RouteData.Route.GetRouteData(this.Context).Values["action"] 

    或 

    ViewContext.RouteData.Values["controller"] 

    ViewContext.RouteData.Values["action"]

    URL的获取很简单,ASP.NET通用: 
    【1】获取 完整url (协议名+域名+虚拟目录名+文件名+参数) 
    string url=Request.Url.ToString();
     
    【2】获取 虚拟目录名+页面名+参数: 
    string url=Request.RawUrl;
    (或 string url=Request.Url.PathAndQuery;)
     
    【3】获取 虚拟目录名+页面名:
    string url=HttpContext.Current.Request.Url.AbsolutePath;
    (或 string url= HttpContext.Current.Request.Path;)
     
    【4】获取 域名:
    string url=HttpContext.Current.Request.Url.Host;
     
    【5】获取 参数: 
    string url= HttpContext.Current.Request.Url.Query; 
     
    【6】获取 端口:
    Request.Url.Port
     
     
    二、当前controller、action的获取 
    RouteData.Route.GetRouteData(this.HttpContext).Values["controller"] 
    RouteData.Route.GetRouteData(this.HttpContext).Values["action"] 
    或 
    RouteData.Values["controller"] 
    RouteData.Values["action"] 
     
    如果在视图中可以用 
    ViewContext.RouteData.Route.GetRouteData(this.Context).Values["controller"] 
    ViewContext.RouteData.Route.GetRouteData(this.Context).Values["action"] 
    或 
    ViewContext.RouteData.Values["controller"] 
  • 相关阅读:
    BZOJ2705: [SDOI2012]Longge的问题 欧拉函数
    BZOJ3884: 上帝与集合的正确用法 拓展欧拉定理
    BZOJ1296: [SCOI2009]粉刷匠 DP
    BZOJ5293: [Bjoi2018]求和 树上差分
    BZOJ1398: Vijos1382寻找主人 Necklace 字符串最小表示法
    BZOJ5189: [Usaco2018 Jan]Cow at Large 贪心+LCA
    BZOJ2654: tree 二分答案+最小生成树
    BZOJ1304: [CQOI2009]叶子的染色 树形dp
    BZOJ1632: [Usaco2007 Feb]Lilypad Pond SPFA+最短路计数
    BZOJ1726: [Usaco2006 Nov]Roadblocks第二短路 K短路
  • 原文地址:https://www.cnblogs.com/afei9527/p/4518825.html
Copyright © 2011-2022 走看看