首页 > 解决方案 > 在 Web API 项目中使用 DLL

问题描述

我想使用一个与服务器通信的 dll,而在 C# 的控制台应用程序中使用 DLL 它工作正常。但是,当我在 Web API 项目中使用 DLL 时,它不会生成任何日志,也不会返回正确的响应。

DLL 使用 .config 文件,该文件应与 DLL 位于同一位置。在这两种情况下,我都将配置文件粘贴到 bin 文件夹中,但仍然得到不同的结果。

这背后的可能原因是什么。

标签: c#apiiis

解决方案


IIS使用Shadow Copying,即将所有DLLs复制bin到临时文件夹中。在此过程中您的配置文件可能没有被复制,导致您的通信DLL无法找到它的.config.

您可以.config在应用程序启动期间将文件复制到目标临时 bin 文件夹,或者禁用卷影复制web.config具有所有副作用)。


推荐阅读