如何testingMethodInfo.ReturnType是否是System.Void的types?
使用reflection来获得一个MethodInfo,我想testing返回的types是typeof System.Void。
testing它是否是System.Int32正常工作
myMethodInfo.ReturnType == typeof(System.Int32) 但
  myMethodInfo.ReturnType == typeof(System.Void) 
不编译? 目前我正在testing如果名称的string表示是“System.Void”,这似乎是非常错误的。
 您不能直接使用System.Void ,但可以使用typeof(void)来访问它。 
有几个人指出( 这里和这里的意见),原因是ECMA标准335分区II第9.4节说:
以下types的types不能用作实例化(genericstypes或方法)中的参数:
- Byreftypes(例如,
System.Generic.Collection.List 1<string&>无效)- 包含可以指向CIL评估堆栈的字段的值types(例如
List<System.RuntimeArgumentHandle>)- void(例如,
List<System.Void>无效)
当我build立这个,我得到的错误:
System.Void不能从C#中使用 – 使用typeof(void)来获得voidtypes的对象
听起来就是这个答案