0

出于各种安全原因,我们实现了一个程序集,该程序集需要同时存在一个文本文件。我们想在我们的 ASP.NET 应用程序中使用这个库。我们遇到的问题是,当应用程序启动时,我们的程序集加载失败,因为所需的文本文件不在加载程序集的临时 ASP.NET 文件子目录中。有没有办法配置要从 bin 目录加载的程序集?如果没有,有没有办法预测 dll 将去哪里并编写一个脚本来手动复制我们的文件?

4

2 回答 2

0

问题当然是您解析当前文件夹以在程序集中加载文本文件的方式。

您应该使用该AppDomain.CurrentDomain.BaseDirectory属性来获取您的 IIS 根文件夹。

如果您的文本文件已经在您的 Web 应用程序bin文件夹中,请组合:

Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "bin");

您可以使用该AppDomain.CurrentDomain.RelativeSearchPath物业进行清洁。

Path.Combine(AppDomain.CurrentDomain.BaseDirectory, AppDomain.CurrentDomain.RelativeSearchPath);
于 2013-11-08T19:56:22.433 回答
0

我认为通过将该文本文件包含到您的项目中将解决您的问题。

这是您需要做的

  1. 通过添加现有项目将文本添加到您的项目
  2. 右键单击文本文件并选择构建操作作为“内容”
  3. 选择复制到输出目录作为“始终复制”
于 2013-11-08T18:19:01.000 回答