1

我有一个“服务”csproj,它引用了 topshelf(使其成为 Windows 服务)、quartz(用于调度)以及对我的实际代码所在的“核心”csproj 的引用。我使用 costura 将所有 dll 合并为一个最终的 exe。

我的 FodyWeavers.xml 中有 topshelf、quartz 和 core 作为 IncludedAssemblies。最终的 exe 也嵌入了这些。用“dotpeek”检查。但是,当我执行 exe 时,它​​只是说“服务正在运行,请按 Control+C 退出。”。它没有达到我在核心项目中的实际代码。

在尝试了很多东西之后,我将核心项目引用的 dll 复制到了输出文件夹,然后服务开始运行——执行我的代码并进行数据库更新、写入日志等。

因此,我尝试在 fodyweavers.xml 中提及 nuget 包 dll 和项​​目引用 dll 的“核心”,但随后出现构建错误,提示“找不到程序集,即使是 copylocal=false”

有人可以提示我正确的方向吗?也许,我错过了一些明显的东西。

4

0 回答 0