本文介绍了C#中的循环引用的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧! 问题描述 限时删除!! 嗨 我有一种情况,我想使用循环引用。为了演示目的,我在示例中剪了 。 假设我们有一个可执行文件(main.exe)和两个DLLS(A1.dll和A2。 dll)。 Main可以访问A1和A2中的类; A1可以访问A2中的类。 但是,我现在想要从A2访问A1中的类。我不能简单地 创建第三个DLL,因为A1 / A2组件使用 各自组件中的其他类。 我相信我可以使用接口类来解决这种情况。 但是,说实话,我不知道怎么做? 一个例子就是非常实用.... 例如在main.exe中 -------------- 使用A1; 使用A2; A1C1 a1c1 =新A1C1(); A2C1 a2c1 =新A2C1(); A1.DLL ------ 使用A2; 名称空间A1 { ///< summary> /// Class1的摘要说明。 ///< / summary> ; 公共舱A1C1 { 公共A1C1() { A2C1 c =新A2C1(); } } 公共类A1C2 { public A1C2() { //我想从A2获取课程 } } } A2.DLL ------ 命名空间A2 { ///< summary> /// Class1的摘要说明。 // /< / summary> 公共类A2C1 { public A2C1() { //可以从A1访问此课程 } } 公共类A2C2 { public A2C2() { //我现在想要访问A1C2 ?????? } } }HiI have a situation where I want to use circular referencing. I have cutdown the example for demonstration purposes.Say we have one executable (main.exe) and two DLLS (A1.dll and A2.dll).Main can access classes in A1 and A2; A1 can access classes in A2.However, I now want to access classes in A1 from A2. I cannot simplycreate a third DLL as the A1/A2 assemblies use other classes withintheir respective assemblies.I believe that I can use interface classes to solve this situation.However, to be honest, I''m not sure how?An example would be very useful....eg in main.exe--------------using A1;using A2;A1C1 a1c1 = new A1C1();A2C1 a2c1 = new A2C1();A1.DLL------using A2;namespace A1{/// <summary>/// Summary description for Class1./// </summary>public class A1C1{public A1C1(){A2C1 c = new A2C1();}}public class A1C2{public A1C2(){// I want access thi class from A2}}}A2.DLL------namespace A2{/// <summary>/// Summary description for Class1./// </summary>public class A2C1{public A2C1(){// Can access this class from A1}}public class A2C2{public A2C2(){// I now want to access A1C2??????}}}推荐答案 剪切 A2.dll)。 A2.dll). 这篇关于C#中的循环引用的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持! 1403页,肝出来的.. 09-09 01:54