想象一下,我有一个包含两个项目的视觉工作室解决方案。在这种情况下,项目 1 知道项目 2,但项目 2 不知道项目 1。
项目一
using Project2;
namespace Project1
{
public class ClassA : IMyInterface {}
public class Main {
public void MainMethod()
{
ARandomClass aRandomClass = new ARandomClass();
IMyInterface classA = new ClassA();
aRandomClass.MyItem = classA;
aRandomClass.MyMethod();
}
}
}
项目 2
namespace Project2
{
public interface IMyInterface { }
public class ARandomClass {
public IMyInterface MyItem { get; set; }
public void MyMethod() {
Type type = MyItem.GetType(); // what happens here?
}
}
}
我的问题真的是,如果我们尝试在没有该类型的引用/知识的项目中获取对象的类型,会发生什么?
它会返回界面吗?它可以?它是否能够以某种方式引用该类型?它会返回“对象”吗?或者它会完全做其他事情吗?