在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"]

获取QueryString

Request.QueryString["id"]

转载于:https://www.cnblogs.com/xdot/p/6844092.html

在ASP.NET MVC 中获取当前URL、controller、action相关推荐

  1. 获取ASP.NET MVC中的完整操作URL [重复]

    本文翻译自:Getting full URL of action in ASP.NET MVC [duplicate] This question already has an answer here ...

  2. 在ASP.NET MVC中使用IIS级别的URL Rewrite

    在ASP.NET MVC中使用IIS级别的URL Rewrite 原文 在ASP.NET MVC中使用IIS级别的URL Rewrite 大约一年半前,我在博客上写过一系列关于URL Rewrite的 ...

  3. ASP.NET MVC中你必须知道的13个扩展点

         ScottGu在其最新的博文中推荐了Simone Chiaretta的文章13 ASP.NET MVC extensibility points you have to know,该文章为我 ...

  4. 如何在 ASP.NET MVC 中集成 AngularJS(2)

    在如何在 ASP.NET MVC 中集成 AngularJS(1)中,我们介绍了 ASP.NET MVC 捆绑和压缩.应用程序版本自动刷新和工程构建等内容. 下面介绍如何在 ASP.NET MVC 中 ...

  5. 如何在 ASP.NET MVC 中集成 AngularJS

    介绍 当涉及到计算机软件的开发时,我想运用所有的最新技术.例如,前端使用最新的 JavaScript 技术,服务器端使用最新的基于 REST 的 Web API 服务.另外,还有最新的数据库技术.最新 ...

  6. ASP.NET MVC中controller和view相互传值的方式

    ASP.NET MVC中Controller向view传值的方式: ViewBag.ViewData.TempData 单个值的传递 Json 匿名类型 ExpandoObject Cookie Vi ...

  7. ASP.NET MVC教程五:ASP.NET MVC中的路由

    一.概述 在ASP.NET MVC架构中,控制器在3大核心构件中处于中心地位,通过控制器支配模型和视图,然而从浏览器发出的请求到控制器还需要路由的协助,路由将特定的请求和控制器的动作对应起来. 在AS ...

  8. ASP.NET MVC中的身份验证

    传统的登录验证方式,是通过将用户的登录状态信息保存在服务端的Session中,再利用客户端浏览器的Cookie保存SessionID,这样浏览器每次在向服务端发起请求时,都会携带该Cookie值,服务 ...

  9. 通过源代码研究ASP.NET MVC中的Controller和View(二)

    通过源代码研究ASP.NET MVC中的Controller和View(一) 在开始之前,先来温习下上一篇文章中的结论(推论): IView是所有HTML视图的抽象 ActionResult是Cont ...

最新文章

  1. AT2362 [AGC012B] Splatter Painting(思维、dfs染色、剪枝)
  2. Eval()特殊绑定
  3. EasyUI的datebox用法
  4. dederss.php美国与,Dede经验:全站rss/连载和分类首页模板替换
  5. Pixhawk代码分析-姿态解算篇D
  6. python 3.9 发布计划_Python 3.9.0 beta4 发布
  7. 简单解释什么是 依赖注入 和 控制反转
  8. Java PipedInputStream receive()方法与示例
  9. Asp.net+Jquery实现用户信息异步验证
  10. linux监控任务跑满,Linux服务器带宽和CPU跑满或跑高排查
  11. Linux用scp实现无密码传输文件和目录(使用密钥)
  12. Hash 函数的现状,2012
  13. Atitti v5住宿服务部后勤部建设指引指南.docx
  14. 增值税电子发票的对接系统的设计
  15. Linux安全加固手册
  16. python爬虫课程大纲_马哥2018python全栈+爬虫+高端自动化课程大纲
  17. 2019仿笔趣阁小说网站源码(PC版+手机版+APP+采集器+教程)下载
  18. AI 可靠性论文整理
  19. ASO优化技巧:利用好App下载周期变化,aso优化技巧介绍
  20. 【整理】TAC码是什么?TAC码和IMEI有什么关系?

热门文章

  1. leetcode(1)---两数之和
  2. laravel 先排序后分组怎么写_插入排序的故事
  3. C语言面向对象编程(六):配置文件解析
  4. 如何成为优秀的程序员
  5. mysql 时间间隔分组_sql的两种以时间间隔分组的方法
  6. linux桌面效率提高,ElementaryOS:使用这个轻量级 Linux 桌面提高工作效率
  7. 7.5 obtaining database metadata
  8. Apache VFS:基本介绍
  9. 固定收益证券(fixed income)
  10. 7号团队-团队任务3:每日例会(2018-11-29)