Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/291.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# Type.GetType返回null_C#_Gettype - Fatal编程技术网

C# Type.GetType返回null

C# Type.GetType返回null,c#,gettype,C#,Gettype,我正在尝试使用Type.GetType并传递“caLibClient.entity.Web2ImageEntity”完整类名。实体是命名空间,位于分离的程序集(caLibClient)中,并添加到程序引用程序集列表中。当我从程序调用Type.GetType时,它总是返回Null,有什么问题吗 您还需要添加程序集名称,因为您的类型不在正在执行的程序集中(也不在mscorlib中),所以调用应该是: var myType = Type.GetType("caLibClient.entity.Web2

我正在尝试使用Type.GetType并传递“caLibClient.entity.Web2ImageEntity”完整类名。实体是命名空间,位于分离的程序集(caLibClient)中,并添加到程序引用程序集列表中。当我从程序调用Type.GetType时,它总是返回Null,有什么问题吗

您还需要添加程序集名称,因为您的类型不在正在执行的程序集中(也不在mscorlib中),所以调用应该是:

var myType = Type.GetType("caLibClient.entity.Web2ImageEntity, FullAssemblyName");
从:

类型名称
类型
系统字符串

要获取的类型的程序集限定名。看见 AssemblyQualifiedName。如果类型位于当前正在执行的 在Mscorlib.dll中,提供类型名就足够了 由其命名空间限定

从中,这是一个示例名称:

TopNamespace.SubNameSpace.ContainingClass+NestedClass, MyAssembly, Version=1.3.0.0, Culture=neutral, PublicKeyToken=b17a5c561934e089
更新:如果您已经在项目中引用程序集,并且在编译时知道类型名称是什么,那么最好说

Type myType = typeof(caLibClient.entity.Web2ImageEntity);
因为现在您不需要在运行时搜索类型;编译器将为您完成所有操作。

您需要传递一个,在您的情况下,类似以下内容:

var yourType = Type.GetType("caLibClient.entity.Web2ImageEntity,caLibClient");

根据

尝试
Type.GetType(“caLibClient.entity.Web2ImageEntity,caLibClient”)
,如果知道目标类型所在的程序集中的类型,可以避免硬编码完整的程序集限定名。例如:

Type.GetType(
    "MyAssembly.Foo.BarSubclass, " + typeof(MyAssembly.Foo.IBar).Assembly.FullName)

如何找到完整的程序集名称?不确定我是否正确理解了它的意思。在哪里查找?@Tomas您引用的程序集的名称是什么?