6

我正在使用Type.GetType()创建一个实例。

这有效:

 var type = Type.GetType("Test.ClassServices.HowService, Test");

但是,这行不通。它返回null

 var name = "How";
 var type = Type.GetType("Test.ClassServices."+name+"Service, Test");
4

1 回答 1

5

不可复制。运行此示例:

var hardCodedWorking = Type.GetType("System.String");

var stringName = "String";
var concatenatedWorking = Type.GetType("System." + stringName);

var badStringName = "string";
var concatenatedNull = Type.GetType("System." + badStringName);

从MSDN 上的Type.GetType() :

获取具有指定名称的 Type,执行区分大小写的搜索。

基于上面的例子和我的例子,我相信很可能是值name与类的名称不完全匹配。

于 2012-04-12T15:39:54.183 回答