为什么
properties[5].PropertyType.GetGenericTypeDefinition() ==
Type.GetType("System.Nullable`1")
时,等于true
properties[5].PropertyType.GetGenericTypeDefinition() ==
Type.GetType("System.Nullable")
等于假?
Properties[5]
是public Nullable<DateTime>
字段。
“1 after the
System.Nullable”是什么意思?
答案 0 :(得分:5)
`1表示该类型是泛型类型。由于可能有一个名为“Foo”的类型以及一个名为“Foo”的类型,因此需要有一些内部方法来区分这两种类型。
由于存在非泛型System.Nullable
类型,但您使用的是泛型类型,因此与GetType(“System.Nullable”)的比较将始终返回false。
答案 1 :(得分:3)
Nullable`1是您知道的类的真实姓名Nullable&lt; T&gt;在C#(或VB.Net中的Nullable(Of T))。
Nullable是一个静态类,有许多辅助方法可以使用Nullable&lt; T&gt;。