在解决方案结构中引用共享项目

时间:2017-04-06 07:36:02

标签: c# class-library project-reference shared-project

我试图通过在几个类库中引用共享项目来解决问题。

在内部解决方案中,项目之间的引用是:

  • 班级图书馆A - > SharedProject
  • 班级图书馆B - > SharedProject
  • 类库C - > SharedProject
  • 类库C - >类库A
  • 类库C - >类库B

在共享项目中,我只有一个逻辑类,我想分享,所以在每个类库项目中我都使用共享项目中的相同类。但是在构建之后,我在类库C中得到了以下错误:

类型'同一类'存在于类库A和类库B

有没有办法让这个工作,或者我用经典类库替换共享项目?

1 个答案:

答案 0 :(得分:1)

A'共享项目'实际上是一种在多个项目之间共享源代码的方法,而无需构建DLL(如在类库中)。您可以将其视为将SharedProject的源代码粘贴到类库A和类库B中。

此时应该相当明显的是,类库A和类库B确实具有在SharedProject中定义的相同类,但是它们都定义它们,而不是两个引用< / em>相同的课程。

你最初的直觉是正确的,正确的做法是用类库替换它,这正是它的用途。然后你会有一个A和B都引用的SharedProject.dll,然后C会引用A.dll,B.dll和SharedProject.dll,它应该都没问题(除非版本不匹配)。