我试图通过在几个类库中引用共享项目来解决问题。
在内部解决方案中,项目之间的引用是:
在共享项目中,我只有一个逻辑类,我想分享,所以在每个类库项目中我都使用共享项目中的相同类。但是在构建之后,我在类库C中得到了以下错误:
类型'同一类'存在于类库A和类库B
中有没有办法让这个工作,或者我用经典类库替换共享项目?
答案 0 :(得分:1)
A'共享项目'实际上是一种在多个项目之间共享源代码的方法,而无需构建DLL(如在类库中)。您可以将其视为将SharedProject的源代码粘贴到类库A和类库B中。
此时应该相当明显的是,类库A和类库B确实具有在SharedProject中定义的相同类,但是它们都定义它们,而不是两个引用< / em>相同的课程。
你最初的直觉是正确的,正确的做法是用类库替换它,这正是它的用途。然后你会有一个A和B都引用的SharedProject.dll,然后C会引用A.dll,B.dll和SharedProject.dll,它应该都没问题(除非版本不匹配)。