zoukankan      html  css  js  c++  java
  • C#取得Web程序和非Web程序的根目录的N种取法

    取得控制台应用程序的根目录方法
    方法1、Environment.CurrentDirectory 取得或设置当前工作目录的完整限定路径
    方法2、AppDomain.CurrentDomain.BaseDirectory 获取基目录,它由程序集冲突解决程序用来探测程序集
    取得WinForm应用程序的根目录方法
    1、Environment.CurrentDirectory.ToString();//获取或设置当前工作目录的完全限定路径
    2、Application.StartupPath.ToString();//获取启动了应用程序的可执行文件的路径,不包括可执行文件的名称
    3、Directory.GetCurrentDirectory();//获取应用程序的当前工作目录
    4、AppDomain.CurrentDomain.BaseDirectory;//获取基目录,它由程序集冲突解决程序用来探测程序集
    5、AppDomain.CurrentDomain.SetupInformation.ApplicationBase;//获取或设置包含该应用程序的目录的名称
    取得web应用程序的根目录方法
    1.HttpContext.Current.Server.MapPath("~/configs/ChannelUsers.xml")

    HttpContext.Current
    返回当前请求的 HttpContext 对象。如此我们就可以直接访问Request、Response、Session、Application等对象,和Page中访问等同。
    我们无需再将Page用参数的方式传递到我们的类库对象中。

    <DIVCLASS=CODE>HttpContext.Current.Session["name"] = "猪八戒";
    string name = HttpContext.Current.Request.Param["name"];
    HttpContext.Current.Response.Write("猪八戒好吃懒做!");

    <SPANSTYLE="FONT-SIZE: 14pt?="">

    获取网站根目录的方法有几种如:

    Server.MapPath(Request.ServerVariables["PATH_INFO"])
    Server.MapPath("/")
    Server.MapPath("")
    Server.MapPath(".")
    Server.MapPath("../")
    Server.MapPath("..")
    Page.Request.ApplicationPath
    运行结果:
    C:InetpubwwwrootEnglishClubmanageWebForm1.aspx
    C:Inetpubwwwroot
    C:InetpubwwwrootEnglishClubmanage
    C:InetpubwwwrootEnglishClubmanage
    C:InetpubwwwrootEnglishClub
    C:InetpubwwwrootEnglishClub

    以上的方法可以在.aspx中访问,但是如果你在。cs文件就不能用。

    HttpContext.Current.Server.MapPath();
    System.Web.HttpContext.Current.Request.PhysicalApplicationPath   

    在.cs文件中可以用。

    但是HttpContext.Current.Server.MapPath();这个获取的是文件的路径而不是根目录。

    只有System.Web.HttpContext.Current.Request.PhysicalApplicationPath    这个才是获取的根目录,在写获取数据库路径是应该用这个,其他的都有问题。

  • 相关阅读:
    获奖2008年金蝶集团优秀员工感言
    对如何建设一个可运维高可靠的SAAS平台,我终于有了想法!!!
    javaeye站点被ARP攻击有感
    回想过去几年软件业的荒唐事
    也说一种普遍错误使用的LOG方式
    看看国外的本科生能做什么?(Robert Love)
    zz乱码、编码问题详
    查找linux内核支持的usb摄像头列表(UVC万能驱动)
    Greg KroahHartman LDD3 作者,LKN作者,linux driver 开发者,新闻两则,因为过时了所以就放我这个垃圾博客里吧
    zz QEMU 与 Bochs
  • 原文地址:https://www.cnblogs.com/aaa6818162/p/4666466.html
Copyright © 2011-2022 走看看