如何获取类库的当前目录?

nan*_*dos 26 c# asp.net path configuration-files filepath

我一直在寻找,但我还没有找到解决这个问题的方法:我想创建一个类库,该类库在名为Configuration的子目录下有一个配置文件.我希望将该类库部署到任何地方,我希望它通过了解自己的位置来查找其配置文件.

以前的尝试Assembly.GetExecutingAssembly().Location没有奏效.
它会返回临时位置,例如

C:\Windows\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files\root\7c00e0a3\38789d63\assembly\dl3\9c0a23ff\18fb5feb_6ac3c901

而不是期望的

bin/Configuration 路径.

所以:

  1. 类库可以知道它自己在磁盘上的位置吗?
  2. 如何根据您运行应用程序的方式(在VS内部调试,在IIS上部署等)更改目录,我将如何为此功能进行测试脚本的操作

Ree*_*sey 40

这应该工作 -

string assemblyFile = (
    new System.Uri(Assembly.GetExecutingAssembly().CodeBase)
).AbsolutePath;
Run Code Online (Sandbox Code Playgroud)