程序集“Sxxxx.Proyyyy, Version=1.0.2012.816, Culture=neutral, PublicKeyToken=null”中的类型“Sxxxx.Proyyyy.Projects”的方法“get_AreaType”没有实现。
这个类型中定义了AreaType属性,并且是可读写的,get和set都有实现代码,没有get_AreaType方法。
这个问题在我改动之后发生,改动之前的情况是,项目A中有一个枚举类型B,我新建了一个项目C,然后把A中的B类型删除了,然后这个枚举类型的代码拷贝到C项目中,成了C项目中的B枚举类型,这样,A项目需要使用这个枚举类型就引用了C项目;
问题出在D项目:我修改之前D项目的一个类型E中有一个属性,它的类型是A项目中的B枚举类型,所以D项目引用了A项目;后来我改动之后,D项目还有别的东西引用了A项目,而这个属性类型必须是用C项目的B枚举类型,所以也引用了C项目。
现在的情况是D项目生成的程序集是动态加载的,不知道是不是加载程序集的先后顺序的原因还是共同引用了C项目的原因,导致在加载D项目生成的程序集D.dll时,抛出以上异常消息,异常类型为 System.Reflection.ReflectionTypeLoadException。
这个问题在网上也有人提供了解决方案,可是我试过却不能解决:
http://topic.csdn.net/u/20090323/13/f1960939-3ec7-4e83-9d81-0c3673a3f7df.html,它的最后一个回复提到一个网址,我试过了但是没处理掉我遇到的情况:
http://hi.baidu.com/chen_767/item/bf543e31f42b1fc31b9696d7
希望有高手能够解决或指点迷津,谢谢。