Just wondering if anyone knows how to fix this error? I\'ve also used TypeCode.
but still no luck. Thanks
case typeof(Nullable).ToString
Ultimately, typeof(Nullable<int>)
isn't a TypeCode
, and the string representation of that isn't a TypeCode
. There is no TypeCode
that represents Nullable<int>
specifically.
You can use Nullable.GetUnderlyingType(type)
to check that something is Nullable<T>
and get the T
at the same time (it returns null
if not), and you can use Type.GetTypeCode
on the result of that, but: I suspect that in your case, using TypeCode
at all may be an error, and simply checking the type itself (if (type == typeof(int?)) {...}
) may be better.
The type you use in the switch
statement has to match the type in the case
statements, where currently you're comparing a TypeCode
to a string
.
The TypeCode enumeration only contains values for the primitive types, and all others will be TypeCode.Object
. So you can't get a specific TypeCode
for the Nullable<int>
type.