3

我有两个项目的解决方案:

项目 1: Wrapper.Dll,其中包含一个 NLog 包装器。NLog 和 NLog.Extended 已与 Nuget 一起安装。

项目 2:是一个 ASP.Net MVC 项目,其中包含对项目 1 的引用。

当我尝试运行 Web 项目时,它会引发异常,因为 NLog 尝试从 NLog.Extended.Dll 加载目标渲染器。

如果我检查 Wrapper.dll 的 bin 目录,我有 NLog.Dll 和 NLog.Extended.Dll。

如果我检查 Web 项目的 bin 目录,我只有 NLog.dll。

如何告诉 Visual Studio 将 NLog.Extended.Dll 从项目 1 复制到项目 2?

编辑:添加一些使用 NLog.Extended.Dll 中的某些内容的死代码会复制文件。有没有更清洁的解决方案?

谢谢

4

2 回答 2

1

不幸的是,没有更清洁的解决方案。如果您的代码没有(直接或间接)引用 NLog.Extended 程序集中的对象,则不会复制它。这当然是一个问题,因为布局只是字符串而不是直接引用。您可以使用构建后事件,但在我看来这是一个更丑陋的解决方案。

于 2015-04-24T11:57:34.453 回答
0

NLog.Extended.dll如果它依赖于它,您可以在 Web 项目中添加对它的引用。

于 2012-04-23T11:27:59.873 回答