为了避免重复代码,我编写了一个方法,我将一个字符串(ClassNameString)作为参数传递给它,并使用它生成2个东西,一个是WebClient的url,一个是一个名为Class的Class是字符串值。
第一个目的可以没有问题,但第二个真的困扰我,我写下面的代码。
Type targetRawDataClassType = Type.GetType( ClassNameString, true );
但代码为falis,它说“无法从程序集'ABCDEFG,Version = 1.0.0.0,Culture = neutral,PublicKeyToken = null'加载类型'ClassNameString'。”
如何解决?
答案 0 :(得分:6)
看起来很奇怪。
我通过在执行GetType时引用完整的命名空间来解决问题。 似乎即使我首先使用“使用XXXXX”引用命名空间,它也不起作用。我应该在运行时引用它。
此问题已通过以下代码解决:
Type targetRawDataClassType = Type.GetType(
NameSpaceString +
ClassNameString,
true );