csc.exe和相互依赖的程序集

Rob*_*ahy 5 .net c# csc

我一直在研究一个项目,随着它的成长,我意识到两个不能连接在一起的部分是相互依赖的.

我们将这两个部分称为a.exe和b.dll.b.dll提供了一个允许a.exe检索数据的实现,但我希望它是自己的独立程序集,以便可以轻松更改它以使a.exe与不同的数据源通信.

但是,虽然需要a.exe来引用b.dll,但b.dll需要多个函数,这些函数是a.exe不可分割的一部分.

因为我一直在编译 - 测试 - 因为我一直在编写这个项目,a.exe和b.dll都存在,我可以针对a.exe编译b.dll而针对b.dll编译a.exe ,但我怎么能/可以从源头重建这两个?

Jos*_*rke 5

我会将你的系统重构为三个程序集:

  • a.exe - 主EXE什么都不应该引用这个
  • b.dll - 正如您今天所拥有,但不引用a.exe,它引用了c.dll
  • c.dll - 这应该包含a和b都需要引用的常见部分/部分


Rob*_*ahy 2

调用csc.exe,将a.exe和b.dll的源代码编译为a.exe,调用csc.exe,将b.dll的源代码编译为b.dll并引用a.exe,然后调用csc.exe之一上次将a.exe的源代码编译为a.exe并引用b.dll。