Type.GetType()抛出StackOverflowException

时间:2013-08-27 09:17:42

标签: c# stack-overflow

我有一个问题,这个代码

Type.GetType("Fully qualified assembly name goes here");

但是得到一个无法捕获的StackOverflowException。

我已设法从完全限定的程序集名称实例化该类,但在调用具有相同名称的GetType时会出现此错误。

除此之外,我已经看到了有问题的代码行在某些情况下而不是在其他情况下,在两种情况下使用完全相同的完全限定程序集名称。

这是我的第一个StackOverflow问题,因此欢迎对其结构进行评论。 :)

1 个答案:

答案 0 :(得分:0)

以下是一些可能对http://msdn.microsoft.com/en-us/library/w3f99sx1.aspx提供帮助的相关信息:

要确定程序集是否存在问题,请尝试以下操作:

  

GetType导致加载typeName中指定的程序集。您还可以使用Load方法加载程序集,然后使用Assembly类的GetType或GetTypes方法获取Type对象。

如果您在Load(assembly)上收到错误,则表示问题与GetType()电话无关。

另外,请确保传递正确的装配类型:

  

GetType仅适用于从磁盘加载的程序集。如果调用GetType来查找使用System.Reflection.Emit服务定义的动态程序集中定义的类型,则可能会出现不一致的行为。