C#有什么办法能够得到根目录下某一文件夹的路径?

时间:2022-01-03 12:30:48
项目中一个ASP.NET做的网站,在项目路径下有App_Code文件夹和一个用来存放数据文件的File文件夹,App_Code文件夹下有数据处理类filemanagement.cs,该类中需要用到数据文件所在路径,有什么办法能够得到File文件夹的路径?

之前在网页程序中的aspx.cs中用过Server.mappath()来得到File文件夹的路径,经调试能够实现,但不知为什么在App_Code文件夹中的filemanagement.cs类中无法引用System.Web类,因此没办法用Server.mappath()方法,这是什么原因?

6 个解决方案

#1


App_Code文件夹中的filemanagement.cs类中无法引用System.Web类
觉得不可思议。首先添加对System.Web的引用,然后再写 using System.Web;

#2


"在App_Code文件夹中的filemanagement.cs类中无法引用System.Web类"  
 System.Web.HttpContext.Current.Server.MapPath("~/File/")

#3


App_Code文件夹中的filemanagement.cs类中是可以引用System.Web命名空间的,但是不能用Server.MapPath("")方法,Server在这里无效。

下面这个方法大概是最通用、限制最少的:
直接用System.AppDomain.CurrentDomain.BaseDirectory+"File"获取物理路径。

#4


 System.Web.HttpContext.Current.Server.MapPath

#5


也可以在使用filemanagement类时,将File文件夹的路径传递过去啊……

#6


引用 3 楼 dalmeeme 的回复:
App_Code文件夹中的filemanagement.cs类中是可以引用System.Web命名空间的,但是不能用Server.MapPath("")方法,Server在这里无效。

下面这个方法大概是最通用、限制最少的:
直接用System.AppDomain.CurrentDomain.BaseDirectory+"File"获取物理路径。


用这个方法能够实现。

之前说的“App_Code文件夹中的filemanagement.cs类中无法引用System.Web类”这个问题,我重新检查了一下程序,我想可能是因为filemanagement.cs内部程序结构不符合类的规范,因为这个filemanagement.cs是用来实现WCF服务的类,内部只有几个方法,没有‘namespace’、‘class’等,不是标准的类结构,所以没办法引用所有类文件。

非常感谢大家的帮忙!

#1


App_Code文件夹中的filemanagement.cs类中无法引用System.Web类
觉得不可思议。首先添加对System.Web的引用,然后再写 using System.Web;

#2


"在App_Code文件夹中的filemanagement.cs类中无法引用System.Web类"  
 System.Web.HttpContext.Current.Server.MapPath("~/File/")

#3


App_Code文件夹中的filemanagement.cs类中是可以引用System.Web命名空间的,但是不能用Server.MapPath("")方法,Server在这里无效。

下面这个方法大概是最通用、限制最少的:
直接用System.AppDomain.CurrentDomain.BaseDirectory+"File"获取物理路径。

#4


 System.Web.HttpContext.Current.Server.MapPath

#5


也可以在使用filemanagement类时,将File文件夹的路径传递过去啊……

#6


引用 3 楼 dalmeeme 的回复:
App_Code文件夹中的filemanagement.cs类中是可以引用System.Web命名空间的,但是不能用Server.MapPath("")方法,Server在这里无效。

下面这个方法大概是最通用、限制最少的:
直接用System.AppDomain.CurrentDomain.BaseDirectory+"File"获取物理路径。


用这个方法能够实现。

之前说的“App_Code文件夹中的filemanagement.cs类中无法引用System.Web类”这个问题,我重新检查了一下程序,我想可能是因为filemanagement.cs内部程序结构不符合类的规范,因为这个filemanagement.cs是用来实现WCF服务的类,内部只有几个方法,没有‘namespace’、‘class’等,不是标准的类结构,所以没办法引用所有类文件。

非常感谢大家的帮忙!