C#(ASP.Net)获取当前路径的方法集合

C#获取当前路径的方法集合 wince Path.GetDirectoryName(System.Reflection.Assembly.GetExecutingAssembly().GetName().CodeBase)   System.Web.HttpContext.Request.{获取服务器绝对路径和虚拟目录路径} System.AppDomain.CurrentDomain.BaseDirectory;获 阅读详情

//获取当前进程的完整路径,包含文件名(进程名)。
string str = this.GetType().Assembly.Location;
result: X:\xxx\xxx\xxx.exe (.exe文件所在的目录+.exe文件名)
//获取新的 Process 组件并将其与当前活动的进程关联的主模块的完整路径,包含文件名(进程名)。
string str = System.Diagnostics.Process.GetCurrentProcess().MainModule.FileName;
result: X:\xxx\xxx\xxx.exe (.exe文件所在的目录+.exe文件名)

//获取和设置当前目录(即该进程从中启动的目录)的完全限定路径。
string str = System.Environment.CurrentDirectory;
result: X:\xxx\xxx (.exe文件所在的目录)
//获取当前 Thread 的当前应用程序域的基目录,它由程序集冲突解决程序用来探测程序集。
string str = System.AppDomain.CurrentDomain.BaseDirectory;
result: X:\xxx\xxx\ (.exe文件所在的目录+"\")
//获取和设置包含该应用程序的目录的名称。
string str = System.AppDomain.CurrentDomain.SetupInformation.ApplicationBase;
result: X:\xxx\xxx\ (.exe文件所在的目录+"\")
//获取启动了应用程序的可执行文件的路径,不包括可执行文件的名称。
string str = System.Windows.Forms.Application.StartupPath;
result: X:\xxx\xxx (.exe文件所在的目录)
//获取启动了应用程序的可执行文件的路径,包括可执行文件的名称。
string str = System.Windows.Forms.Application.ExecutablePath;
result: X:\xxx\xxx\xxx.exe (.exe文件所在的目录+.exe文件名)
//获取应用程序的当前工作目录(不可靠)。
string str = System.IO.Directory.GetCurrentDirectory();
result: X:\xxx\xxx (.exe文件所在的目录)
========================================================
.NET中三种获取当前路径的代码
//Web编程
HttpContext.Current.Server.MapPath("FileName")
System.Web.HttpContext.Current.Request.Path
//Windows编程
System.Environment.CurrentDirectory
//Mobile编程
Path.GetDirectoryName(System.Reflection.Assembly.GetExecutingAssembly().GetName().CodeBase);
A.指定 客户端元素 资源的路径
B.指定 服务器控件 资源的路径
C.确定当前网站的物理文件路径
============================
使用网站中的资源时,通常必须指定资源的路径。
例如,您可以使用 URL 路径引用页面中的图像文件或网站中其他位置处的页面的 URL。
同样,Web 应用程序中的代码可以使用基于服务器的文件的物理文件路径对文件进行读写操作。
ASP.NET 提供用于引用资源并确定应用程序中的页面或其他资源的路径的方法。
A.指定 客户端元素 资源的路径
------------------------------
许多情况下,页面中的元素或控件必须引用外部资源,如文件。
ASP.NET 允许您通过各种方法引用外部资源。
所选方法取决于使用客户端元素还是服务器控件。
元素(不是页面中的服务器控件,而是客户端元素)以原样传递给浏览器。
因此,从客户端元素中引用资源时,应根据 HTML 中 URL 的标准规则构造路径。
可以使用完全限定(绝对)URL 路径,也可以使用各种类型的相对路径。
例如,如果页面包含一个 img 标记,则可以使用以下路径之一设置其 src 属性:
绝对 URL 路径:
阅读代码编辑代码运行效果复制HTML代码保存代码
如果引用其他位置(如外部网站)中的资源,则绝对 URL 路径非常有用。
站点根目录相对路径,
根据站点(不是应用程序)根目录进行解析。
此示例路径假定 Images 文件夹存在于网站根目录下:
阅读代码编辑代码运行效果复制HTML代码保存代码
如果您的网站为 http://www.xxx.com,则路径将解析为以下形式:
http://www.xxx.com/Images/SampleImage.jpg
如果将跨应用程序的资源(如图像或客户端脚本文件)
保留在网站根目录下的文件夹中,则站点根目录相对路径非常有用。
根据当前页面路径解析的相对路径:
阅读代码编辑代码运行效果复制HTML代码保存代码
解析为当前页面路径对等的相对路径。
阅读代码编辑代码运行效果复制HTML代码保存代码
注意
默认情况下,浏览器使用当前页面的 URL 作为基准解析相对路径。
但是,您可以在页面中包含 HTML base 元素,以指定替代基路径。
B.指定 服务器控件 资源的路径
-----------------------------
在引用资源的 ASP.NET 服务器控件中,
可以使用绝对路径或相对路径,这一点与客户端元素一样。
如果使用相对路径,则相对于页面、用户控件或包含该控件的主题的路径进行解析。
例如,假设 Controls 文件夹中包含一个用户控件。
该用户控件包含一个 Image Web 服务器控件,
该服务器控件的 ImageUrl 属性设置为以下路径:
Images/SampleImage.jpg
该用户控件运行时,路径将解析为以下形式:
/Controls/Images/SampleImage.jpg
无论承载用户控件的页面位置如何,都是如此。
服务器控件中的绝对和相对路径引用具有以下缺点:
绝对路径在应用程序之间是不可移植的。
如果移动绝对路径指向的应用程序,则链接将会中断。
如果将资源或页面移动到不同的文件夹,
可能很难维护采用客户端元素样式的相对路径。
为克服这些缺点,
ASP.NET 启用了 Web 应用程序根目录运算符 (~),
在服务器控件中指定路径时,可以使用该运算符。
ASP.NET 会将 ~ 运算符解析为当前应用程序的根目录。
可以结合使用 ~ 运算符和文件夹来指定基于当前根目录的路径。
下面的示例
演示使用 Image 服务器控件时用于指定图像的根目录相对路径的 ~ 运算符:
复制ASPX代码保存代码
ImageUrl="~/Images/SampleImage.jpg" />
ImageUrl="~/Images/SampleImage.jpg" />
在该示例中,
图像文件将从 Web 应用程序根目录下的 Images 文件夹中直接读取,
无论该页面位于网站的什么位置。
注意
~ 运算符只能为服务器控件识别,并且位于服务器代码中。
不能将 ~ 运算符用于客户端元素。
可以在服务器控件中的任何与路径有关的属性中使用 ~ 运算符。
注意
在主控页中,资源的路径基于内容页的路径进行解析。
C.确定当前网站的物理文件路径
----------------------------
在应用程序中,您可能需要确定服务器上的文件或其他资源的路径。
例如,如果应用程序以编程方式对文本文件进行读写操作,
则必须为用于读取和写入的方法提供该文件的完整物理路径。
将物理文件路径(如 C:\Website\MyApplication)
硬编码到应用程序中并不是很好的做法,
因为如果移动或部署应用程序,则路径会发生更改。
但是,
ASP.NET 为您提供了以编程方式获取应用程序中的任何物理文件路径的方法。
然后,您可以使用基文件路径创建所需资源的完整路径。
用于确定文件路径的两种最常用的 ASP.NET 功能是
返回路径信息的 HttpRequest 对象的属性,以及 MapPath 方法。
注意
不应将物理文件路径发送到客户端,
因为它们可能会被恶意用户用来获取有关您的应用程序的信息。
根据请求属性确定路径
下表列出了 HttpRequest 对象的属性,
这些属性帮助您确定应用程序中的资源的路径。
下面的示例假定使用以下 URL 来发出浏览器请求:
http://www.xxx.com/MyApplication/MyPages/Default.aspx
对于这些示例,
术语“虚拟路径”是指跟在服务器标识符后面的请求 URL 的一部分,
此时虚拟路径如下所示:
/MyApplication/MyPages/Default.aspx
此外,这些示例假定网站根目录的物理路径为以下形式:
C:\inetpub\wwwroot\MyApplication\
最后,这些示例假定物理路径包含一个名为 MyPages 的文件夹。
则相关属性及其返回值如下:
ApplicationPath
获取当前应用程序的根目录路径,
无论在该应用程序中的什么位置请求该路径。
对于此示例,该属性将返回以下内容:
/
CurrentExecutionFilePath
获取当前请求的虚拟路径。
不同于 FilePath,
差别在于如果请求已在服务器代码中被重定向,
则 CurrentExecutionFilePath 就是正确的。
对于此示例,该属性将返回以下内容:
/MyApplication/MyPages/Default.aspx
如果作为对 Transfer 或 Execute 进行调用的结果,
您获取正在运行的代码中的属性,则路径将反映该代码的位置。
FilePath
获取当前请求的虚拟路径。
对于此示例,该属性将返回以下内容:
/MyApplication/MyPages/Default.aspx
不同于 CurrentExecutionFilePath,FilePath 不反映服务器端转换。
Path
获取当前请求的虚拟路径。对于此示例,该属性将返回以下内容:
/MyApplication/MyPages/default.aspx
PhysicalApplicationPath
获取当前正在执行的应用程序的根目录的物理文件系统路径。
对于此示例,该属性将返回以下内容:
C:\inetpub\wwwroot\
PhysicalPath
获取与请求的 URL 对应的物理文件系统路径。
对于此示例,该属性将返回以下内容:
C:\inetpub\wwwroot\MyApplication\MyPages\default.aspx
使用 MapPath 方法
MapPath 方法返回传递给该方法的虚拟路径的完整物理路径。
例如,以下代码返回网站根目录的文件路径:
Visual Basic :
复制VB.NET代码保存代码Dim rootPath As String = Server.MapPath("~")
C# :
复制C#代码保存代码String rootPath = Server.MapPath("~");
注意
传递给 MapPath 方法的路径必须为应用程序相对路径,而不是绝对路径。

转自:http://www.cnblogs.com/bestfc/archive/2010/06/05/1752440.html

c#获取项目路径的方法 1.asp.net中用 获取站点所在虚拟目录的物理路径用: Request.PhysicalApplicationPath,最后包含“\”; 2.c# winform用 A:获取当前应用程序所在目录的路径用: Application.StartupPath,最后不包含“\”; B:获取当前应用程序文件的路径用: Application.ExecutablePa 阅读详情

相关推荐

fMRI脑影像特征提取——Pearson相关与低阶功能连接LOFC(dpabi+nilearn)

一个连接由节点和连接强度(边)组成。功能连接中的节点可以是单个体素,也可以是由脑图谱定义的脑区ROI。通常的做法是将脑图谱中多个或者全部ROI作为节点,或者是将脑图谱中单个ROI与全脑体素作为节点。定义连接强度(边),最常用的方式是Pearson相关,两个节点之间可能没有物理连接,但如果他们的BOLD信号同步性很强,则它们之间可能存在很强的功能上的协作,即很强的功能连接,这是一个很好的表征两个节点间关系的特征。

意疏的学习笔记 2万+

.NET中三种获取当前路径的代码,经常用到的Web变成,WinForm编程,Windows Mobile 编程

  //Web编程 HttpContext.Current.Server.MapPath("FileName")System.Web.HttpContext.Current.Request.Path//Windows编程 System.Environment.CurrentDirectory//Mobile编程 Path.GetDirectoryName

Gavin luo 我们共同努力 9578

PLC期末速成——顺序功能图转梯形图

一、根据顺序功能图写出梯形图程序 顺序功能图: 梯形图: 1、程序段1,系统运行标志M0.0的启-保-停控制电路。 2、程序段2,PLC上电与逆行,初始化脉冲M1.0激活初始化步M2.0。 3、程序段3,当M2.0初始化步为活动步,并且M0.0系统运行标志位为1时,置位M2.1步,复位M2.0步。 4、当M2.1为活动步,并且I0.3中液位传感器为1时,置位M2.2步,复位M2.1步。 5、程序段5,当M2.2为活动步,并且I0.2高液位传感器为1时,置位M2.3步,复位M2.2步。 6、程序段

qq_52251819的博客 1万+

如何在C#项目中获取当前页面的URL地址

这篇文章给大家介绍如何在C#项目中获取当前页面的URL地址,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。 1、通过C#获取当前页面的URL 复制代码 代码如下: string url = Request.Url.AbsoluteUri; //结果: http://www.baidu.com/web/index.aspx string host = Request.Url.Host; //结果:www.baidu.com string rawUrl = Request.RawUrl; /

weixin_43250628的博客 7575

数据清洗(Data Cleansing)

数据清洗(Data Cleansing)是指对数据进行处理和纠错,以去除或修复数据集中存在的错误、不致、不完整和冗余的数据,从而使数据更加准确、可靠和有用。数据清洗是数据处理和数据分析中一个非常重要的步骤,它可以帮助我们提高数据的质量,从而提高数据分析和机器学习的准确性和可靠性。数据清洗是一个重要的过程,它可以帮助我们提高数据的质量,从而提高数据分析和机器学习的准确性和可靠性。在实际应用中,我们可以使用一些工具和技术来实现数据清洗,例如 Pandas、NumPy 和 OpenRefine 等。通过数据清洗,

meimei169500的博客 1万+

oVirt 4.4.10超详细安装指南:从零搭建企业级虚拟化环境(附常见错误排查)

本文提供了oVirt 4.4.10企业级虚拟化平台的超详细安装指南,涵盖环境规划、系统准备、Engine安装配置、计算节点部署、存储系统集成及高级运维技巧。通过实战操作手册和常见错误排查方法,帮助用户从零搭建稳定高效的虚拟化环境,特别适合企业IT管理员参考实施。

wasm7browser的博客 349

C#获取当前页面的url

HttpContext.Current.Request.Url.PathAndQuery 1、通过ASP.NET获取 如果测试的url地址是http://www.test.com/testweb/default.aspx, 结果如下: Request.ApplicationPath:                /testweb Request.CurrentExecutionFil

wuhen8的专栏 3万+

华为鸿蒙系统也能用!5分钟搞定谷歌三件套安装(附最新APK下载链接)

本文为华为鸿蒙系统用户提供了一份详尽的谷歌三件套(Google Play服务、商店及框架)手动安装指南。文章核心在于无需Root,通过ADB命令获取设备信息,并从可靠来源下载匹配版本的APK,按照正确顺序安装,从而解决海外应用依赖问题,实现5分钟快速部署。

c7d8e9的博客 6444

.NET中三种获取当前路径的代码

 http://blog.csdn.net/jhstudio/archive/2007/11/04/1865882.aspxWeb编程HttpContext.Current.Server.MapPath("FileName")Windows编程System.Environment.CurrentDirectoryMobile编程Path.GetDirectoryName(System.

喜怒形于色 660

C# 上位机高级功能实战:报警、历史回放与远程监控

本文介绍了工业上位机系统的高级功能实现,主要包括实时报警机制、历史数据回放和远程监控三部分。报警功能通过阈值检测实现异常提醒;历史回放利用数据库存储数据,通过定时器控制回放进度;远程监控提供TCP、WebSocket等多种数据传输方式。文章还给出了综合优化建议,如异步处理、报警去抖动等,最终形成一个包含数据采集、显示、存储、报表及高级功能的完整工业自动化闭环系统。

这里只有干货:从 Modbus 通信到 MES 对接,从 YOLO 训练到工控机部署,带你搞定工业软件开发全流程。 749

C++性能优化:深入理解缓存一致性与伪共享

在现代多核处理器的世界里,理解缓存一致性和伪共享就像理解一个复杂社会系统的运作规则。正如心理学家阿德勒所说:"人的行为总是有目的的",CPU缓存的每一次同步也都有其深层的硬件逻辑。本文将带你深入探索这些看不见的性能杀手,以及如何在实际项目中与它们优雅共处。

探索C++编程的奥秘,分享深入的技术见解和实践,旨在激发读者创造力与解决问题的思维。 933

C#中获取当前路径的几种方法

            要在c#中获取路径有好多方法,一般常用的有以下五种:             //获取应用程序的当前工作目录。             String path1 = System.IO.Directory.GetCurrentDirectory();                         MessageBox.Show("获取应用程序的当前工作目录:" +

xulihao2008的专栏 1756

【AutoSAR】【BootLoader】AutoSAR Bootloader 原理与流程

目录 一、HIS规范 二、BOOTLOADER软件架构 三、烧写流程 一、HIS规范 国外整车厂意识到在线刷新ECU的重要性,由奥迪公司、宝马公司、戴姆勒公司、保时捷公司、大众公司成立一个委员会,名为HIS委员会,专门负责帮助汽车制造商掌握微处理器控制单元软件和质量保证领域的原理和方法; HIS Bootloader的主要功能是通过标准的通信接口对ECU进行再编程 。 HIS Bootloader的软件设计基于AUTOSAR体系架构、ISO14229、ISO15765-2、HI...

专注汽车软件开发、AutoSAR、车载以太网、SOA、EE架构。 5247

C#编程中(ASP.Net)获取当前网页路径的所有方法集合总结

//获取当前进程的完整路径,包含文件名(进程名)。 string str = this.GetType().Assembly.Location; result: X:\xxx\xxx\xxx.exe (.exe文件所在的目录+.exe文件名) //获取新的 Process 组件并将其与当前活动的进程关联的主模块的完整路径,包含文件名(进程名)。 string str = Syste

hejisan的专栏 6362

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

【转】C#(ASP.Net)获取当前路径的方法集合

转自:http://www.gaobo.info/read.php/660.htm [c-sharp]view plaincopy //获取当前进程的完整路径,包含文件名(进程名)。 stringstr=this.GetType().Assembly.Location; result:X:/xxx/xxx/xxx.exe(.exe文件所在...

weixin_30911451的博客 134

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

c# 获取路径的盘符_C# ,asp.net 获取当前,相对,绝对路径(转)

C# ,asp.net 获取当前,相对,绝对路径一、C#获取当前路径的方法:. System.Diagnostics.Process.GetCurrentProcess().MainModule.FileName-获取模块的完整路径。. System.Environment.CurrentDirectory-获取和设置当前目录(该进程从中启动的目录)的完全限定目录。. System.IO.Dire...

weixin_42510271的博客 1609

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

C# 获取当前路径的7种方法

1. System.Diagnostics.Process.GetCurrentProcess().MainModule.FileName -获取模块的完整路径。 2. System.Environment.CurrentDirectory -获取和设置当前目录(该进程从中启动的目录)的完全限定目录。 3. System.IO.Directory.GetCurrentDirectory()...

小姐姐 3243

C#、Asp.NET获取当前程序的路径

学习asp.net上传文件时,发现有三种方法可以获取当前web程序目录物理路径:方法一:string sPath = System.IO.Path.GetDirectoryName(Page.Request.PhysicalPath)方法二:string sPath = System.Web.HttpContext.Current.Request.MapPath("images/"

风影随悦的专栏 1018
上一篇: 常用的JavaScript验证正则表达式 .
下一篇: win7配置自己的IIS服务器亲自做的图文很详细
ArvinStudy
博客等级 码龄15年 83粉丝 193原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值