C# - 在没有引用的情况下使用依赖注入(inject)时将 dll 复制到 exe 输出目录?

标签 c# .net visual-studio dependency-injection

我有一个 C# 解决方案,我正在使用依赖注入(inject)来解析 dll 之间的引用。我有一个 exe 项目和一些其他 dll 项目,这些项目没有被 exe 引用(它通过 IoC 容器使用 dll)。项目设置是默认的 visual studio 设置,它在自己的文件夹中构建每个 dll。由于 exe 不引用 dll,因此它们永远不会被复制到 exe 的输出目录,也不会被 IoC 框架找到。

你如何处理这个问题?您是否将它们全部构建在同一目录中?使用构建后复制命令?还是别的?

最佳答案

我通常使用构建后复制命令(使用 Build Events,因此它们是自动的)来处理此问题,该命令将依赖程序集放入共享文件夹中。

然后我确保此文件夹包含在我的 IoC 容器的搜索路径中,以便找到它们。

另一个类似的选项是在您的主应用程序项目上使用构建事件。然后它可以将依赖项复制到适当的文件夹中。这样做的好处是允许不同的依赖项用于同一解决方案中的不同应用程序,同时仍然易于维护。

关于C# - 在没有引用的情况下使用依赖注入(inject)时将 dll 复制到 exe 输出目录?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4606670/

相关文章:

c# - 如何更改行数据绑定(bind)事件中gridview的值

c# - 如何将 int 设置为 byte* C#

c# - httpclient PostAsJsonAsync方法未找到.net框架4并行解决方案

c# - 拥有静态 IReadOnlyDictionary 字段是否线程安全?

visual-studio - 塑料SCM中的代码共享

c# - 从 Orchard CMS 的仪表板添加数据记录

c# - 以编程方式安排/创建 Skype for Business session

c# - 此代码的正确 IDisposable 实现

c++ - 如何设置 CMake 以与 Visual Studio 2017RC 和 CUDA 8.0 一起使用?

c# - "Publish Now"按钮不起作用,但构建 > 发布可以