所以我看到数百名开发人员将他们的解决方案组织到多个项目中,他们通常会有一个主项目,这个项目只是他们的应用程序名称,然后是其他几个,如下所示。
-- AppName
-- AppName.API
-- AppName.Controllers
-- AppName.Core
我对此有一个问题,我无法看到它是如何运作的。我们假设我有一个名为AppName.Game
的项目,其中包含我的游戏模拟器的游戏文件。假设我需要启动某种游戏处理程序来开始游戏循环,我需要AppName
到AppName.Game
的参考。
没关系,我可以做到。当我无法在AppName
中引用AppName.Game
时问题就出现了,因为我已经在相反的方向引用了它。如果我需要在AppName
中引用AppName.Game
以查找严重的内容,例如能够访问Logger类,该怎么办?
我不知道人们如何使这个结构发挥作用,是否有工作?常见做法?任何人都可以帮助我解决这个问题,它让我发疯了。
有人说制作另一个名为AppName.Common
的项目,但这真的是解决这个问题的最佳方法吗?
答案 0 :(得分:1)
你已经找到了解决方案;你需要一个每个人都可以参考的共同项目(但没有引用你的任何项目)。
*.Common
是这些人的标准名称;除非使用.NET Core
*.Core
也是合理的