【问题标题】:What is the proper way to link classes in separate projects?在单独的项目中链接类的正确方法是什么?
【发布时间】:2019-08-10 04:02:41
【问题描述】:

我有一个解决方案,它包含两个项目 - 管理器和查看器。自然,两者都使用相同的类,例如Manager 用于编辑 SomeItem 类实例中的数据,而 Viewer 用于显示它的数据。

我在 Manager 项目中有所有类定义。为了在 Viewer 项目中使用它们,我在 Viewer 中创建了相同的目录层次结构,并将构建操作设置为“编译”的所有类链接起来。

但现在我收到大量这样的警告:

“Manager\Classes\SomeItem.class.cs”中的“SomeItem”类型冲突 在“查看器”中导入类型“SomeItem”,版本=1.0.0.0, 文化=中性,PublicKeyToken=null'。使用中定义的类型 'Manager\Classes\SomeItem.class.cs'。

在两个项目中使用同一个类同时将它放在一个文件中的最佳方法是什么?

【问题讨论】:

  • 我不太明白你做了什么。当我想使用另一个项目中的类时,我会做的就是右键单击“引用”并添加对该项目的引用。
  • 我尝试添加引用,但它报告“无法添加对 Manager 的引用。将此项目添加为引用会导致循环依赖。”。为了解决这个问题,我尝试删除依赖项,但我不断收到“此依赖项是由项目系统添加的,无法删除”。
  • Manager项目中是否有对Viewer的引用?如果是这样删除它(并删除链接的类)

标签: c# visual-studio


【解决方案1】:

我建议您创建一个单独的项目,其中包含您想要共有的类,将应用程序类型设置为类库,完成此操作并编译它之后,您将能够将其添加为对其他两个的引用通过右键单击引用并将其添加为 project reference 的项目。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-06-25
    • 1970-01-01
    相关资源
    最近更新 更多