0

我有一个类的构造函数,它需要在根目录中查找设置文件。这对于大多数项目类型都很好,我抓取这样的目录:

new FileInfo(typeOfThisClass.GetTypeInfo().Assembly.Location).DirectoryName

但是,如果我从 Web 项目(如 Web API)中执行构造函数,这将不起作用。相反,我会得到一个临时目录的路径,而不是当前项目的根目录,比如

C:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files\root\73891a9e\147b8ade\assembly\dl3\7d1ac62b\0064ea47_c6bad201

过去,我使用它来获取 Web 项目的根目录: HttpRuntime.AppDomainAppPath

但是,有问题的构造函数无法访问 HttpRuntime,因为它位于自己的封装程序集中,应该不知道与 Web 项目相关的任何内容。我不想传入字符串,因为我要求我的构造函数是无参数的。

那么我怎样才能以一致的方式获取根目录,该方式适用于任何项目,包括 Web 项目?

4

0 回答 0