本文主要是介绍Server.MapPath() 和 Request.MapPath()使用区别,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
一、Server.MapPath()应用 假设当前的网站目录为E:\wwwroot 应用程序虚拟目录为E:\wwwroot\company 浏览的页面路径为E:\wwwroot\company\news\ 下面的一个 aspx页面。 在该页面中使用 Server.MapPath(“”) :返回当前页面所在的物理文件路径:E:\wwwroot\company\news Server.MapPath(“/”) :返回应用程序根目录所在的物理文件路径:E:\wwwroot Server.MapPath(“./”) :返回当前页面所在的物理文件路径:E:\wwwroot\company\news Server.MapPath(“../”):返回当前页面所在的上一级的物理文件路径:E:\wwwroot\company Server.MapPath(“~/”):返回应用程序的虚拟目录(路径):E:\wwwroot\company Server.MapPath(“~”):返回应用程序的虚拟目录(路径):E:\wwwroot\company二、ASP.NET中Server.MapPath() 和 Request.MapPath()使用区别: Server.MapPath(string) :是将相对于当前调用文件的文件(或目录)映射为物理路径;Request.MapPath(string) :是将string虚拟路径映射为物理路径(asp中Request无此方法) Server.MapPath(string) 中string 可以用“../”方式引用父目录,甚至可以将此目录跳到整个WEB目录外,如:C:\WWWROOT 目录为WEB根目录,在根目录文件中调用此Server.MapPath(“../脚本文件”),则可以调用WEB目录外的脚本、资源等。 Request.MapPath(string) 中的string为虚拟目录,只能相对WEB虚拟目录形式的,也不允许”../”方式调用,只能是”/”,”/xx”等字符串string str1 =Process.GetCurrentProcess().MainModule.FileName;//可获得当前执行的exe的文件名。 string str2=Environment.CurrentDirectory;//获取和设置当前目录(即该进程从中启动的目录)的完全限定路径。 string str3=Directory.GetCurrentDirectory();//获取应用程序的当前工作目录。 string str4=AppDomain.CurrentDomain.BaseDirectory;//获取基目录,它由程序集冲突解决程序用来探测程序集。 string str6=Application.ExecutablePath;//获取启动了应用程序的可执行文件的路径,包括可执行文件的名称。 string str7=AppDomain.CurrentDomain.SetupInformation.ApplicationBase;//获取或设置包含该应用程序的目录的名称。
这篇关于Server.MapPath() 和 Request.MapPath()使用区别的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!