c# - 两个项目中的引用

标签 c# visual-studio reference project-reference

我有两个项目 P1P2

P1 has a reference of P2.

所以我可以从 P1 访问 P2 的方法。但是,如果我想从 P2 访问 P1 的方法,我该如何访问它们呢?

I know I can't add P1's reference in P2?

如果可能呢?如果是,那么如何?

最佳答案

正如其他人指出的,循环引用是问题所在。它无法在编译 P1 之前编译 P2,但是如果 P1 依赖于 P2,则在 P2 编译之前它无法编译 P1……有问题吗?

现在的解决方案:

  • 简单的方法:创建一个共享库,将 P1 和 P2 的共享代码放入其中。此共享项目可供 P1 和 P2 引用。

  • 更好的解决方案:创建一个您在共享库中定义的接口(interface)。将 P1 中 P2 的“引用”基于共享接口(interface),而不是实际实现。通过这种方式,您可以获得更好的可测试解决方案,并且更容易替换部分代码。

关于c# - 两个项目中的引用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34202317/

相关文章:

c# - WP7 ListBox ItemContainerStyle XAML 禁用不工作

c# - 一次获取一个子字符串的所有实例?

c++ - VC++ wcscpy_s 在 "Buffer is too small"上随机断言

C++ - 从结束地址获取函数的起始地址/获取函数的大小

java - 向 ArrayList 克隆添加对象吗?

需要 C# 转换帮助

c# - 向 IEnumerable 等接口(interface)添加通用扩展方法

c# - Microsoft SQL Server,在服务器资源管理器中创建新表

c++ - 在函数中将对象作为引用或指针传递

javascript - javascript如何执行带有参数的回调