zoukankan      html  css  js  c++  java
  • C#里面获取web和非web项目路径

    非Web程序获取路径几种方法如下:

    1.AppDomain.CurrentDomain.BaseDirectory
     2.Environment.CurrentDirectory
    3.HttpRuntime.BinDirectory The path to the current application's/bin directory;
     
     

    Web程序

    HttpCurrent.Context.Server.Mappath()

    HttpContext.Current返回当前请求的 HttpContext 对象。如此我们就可以直接访问Request、Response、Session、Application等对象,和Page中访问等同。 我们无需再将Page用参数的方式传递到我们的类库对象中。
    HttpRuntime 为当前应用程序提供一组 ASP.NET 运行时服务。我们可以通过这个类获得当前ASP.NET工程的一些信息。 HttpRuntime.AppDomainAppVirtualPath : 项目虚拟路径 HttpRuntime.AppDomainAppPath : 项目物理路径 HttpRuntime.BinDirectory : BIN目录物理路径 HttpRuntime.ClrInstallDirectory : CLR安装路径(可以用来获取CLR版本号)
    输出: AppDomainAppId: /LM/W3SVC/1/Root/Learn.Test.Web AppDomainAppPath: D:SystemMy DocumentsVisual Studio ProjectsLearn.TestLearn.Test.Web AppDomainAppVirtualPath: /Learn.Test.Web AppDomainId: /LM/W3SVC/1/Root/Learn.Test.Web-9-127652564154400560 AspInstallDirectory: C:WINDOWSMicrosoft.NETFrameworkv1.1.4322 BinDirectory: D:SystemMy DocumentsVisual Studio ProjectsLearn.TestLearn.Test.Webin ClrInstallDirectory: c:windowsmicrosoft.netframeworkv1.1.4322 CodegenDir: C:WINDOWSMicrosoft.NETFrameworkv1.1.4322Temporary ASP.NET Fileslearn.test.web416801327c880883 IsOnUNCShare: False MachineConfigurationDirectory: c:windowsmicrosoft.netframeworkv1.1.4322Config
    HostingEnvironment
    灵活运用技巧:
    当使用非WEB程序或使用异步调用时,想要取得根目录下的某目录可以使用如下代码:
    HttpRuntime.BinDirectory + "../目录名";
    获取网站根目录的方法有几种如:
    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    这个才是获取的根目录,在写获取数据库路径是应该用这个,其他的都有问题。
    测试过,在有些web项目的cs文件中可以这样用。但是最好是用System.Web.HttpContext.Current.Server.MapPath("/SystemManage/Hotel/LocList.xml");
    在类库项目中,这个通常是不能用的,这个时候需要引用程序集,引用命名空间System.Web;才行。
    System.Environment.CurrentDirectory + @"IPMS.WebaboutMe.txt"
  • 相关阅读:
    python 线性回归(Linear Regression)预测波士顿房价
    python支持向量机分类MNIST数据集
    python朴素贝叶斯分类MNIST数据集
    感知机(perceptron)
    LMS Algorithm 最小均方算法
    线性回归(Linear Regression)和最小二乘法(ordinary least squares)
    KNN实现mnist、fashion mnist数据集的分类
    JavaScript一些常见的知识点
    用js做一个许愿墙
    js做留言板(可以评论 删除评论 评论时间)
  • 原文地址:https://www.cnblogs.com/yj716716yj/p/8651284.html
Copyright © 2011-2022 走看看