protected object ReadTypedNull(XmlQualifiedName type)
{
InitPrimitiveIDs();
object value = null;
if (!IsPrimitiveNamespace(type.Namespace) || (object)type.Name == (object)_urTypeID)
{
return null;
}
if ((object)type.Namespace == (object)_schemaNsID || (object)type.Namespace == (object)_soapNsID || (object)type.Namespace == (object)_soap12NsID)
{
if ((object)type.Name == (object)_stringID ||
(object)type.Name == (object)_anyURIID ||
(object)type.Name == (object)_durationID ||
(object)type.Name == (object)_ENTITYID ||
(object)type.Name == (object)_ENTITIESID ||
(object)type.Name == (object)_gDayID ||
(object)type.Name == (object)_gMonthID ||
(object)type.Name == (object)_gMonthDayID ||
(object)type.Name == (object)_gYearID ||
(object)type.Name == (object)_gYearMonthID ||
(object)type.Name == (object)_IDID ||
(object)type.Name == (object)_IDREFID ||
(object)type.Name == (object)_IDREFSID ||
(object)type.Name == (object)_integerID ||
(object)type.Name == (object)_languageID ||
(object)type.Name == (object)_nameID ||
(object)type.Name == (object)_NCNameID ||
(object)type.Name == (object)_NMTOKENID ||
(object)type.Name == (object)_NMTOKENSID ||
(object)type.Name == (object)_negativeIntegerID ||
(object)type.Name == (object)_nonPositiveIntegerID ||
(object)type.Name == (object)_nonNegativeIntegerID ||
(object)type.Name == (object)_normalizedStringID ||
(object)type.Name == (object)_NOTATIONID ||
(object)type.Name == (object)_positiveIntegerID ||
(object)type.Name == (object)_tokenID)
value = null;
else if ((object)type.Name == (object)_intID)
{
value = default(Nullable<int>);
}
else if ((object)type.Name == (object)_booleanID)
value = default(Nullable<bool>);
else if ((object)type.Name == (object)_shortID)
value = default(Nullable<Int16>);
else if ((object)type.Name == (object)_longID)
value = default(Nullable<long>);
else if ((object)type.Name == (object)_floatID)
value = default(Nullable<float>);
else if ((object)type.Name == (object)_doubleID)
value = default(Nullable<double>);
else if ((object)type.Name == (object)_decimalID)
value = default(Nullable<decimal>);
else if ((object)type.Name == (object)_dateTimeID)
value = default(Nullable<DateTime>);
else if ((object)type.Name == (object)_qnameID)
value = null;
else if ((object)type.Name == (object)_dateID)
value = default(Nullable<DateTime>);
else if ((object)type.Name == (object)_timeID)
value = default(Nullable<DateTime>);
else if ((object)type.Name == (object)_unsignedByteID)
value = default(Nullable<byte>);
else if ((object)type.Name == (object)_byteID)
value = default(Nullable<SByte>);
else if ((object)type.Name == (object)_unsignedShortID)
value = default(Nullable<UInt16>);
else if ((object)type.Name == (object)_unsignedIntID)
value = default(Nullable<UInt32>);
else if ((object)type.Name == (object)_unsignedLongID)
value = default(Nullable<UInt64>);
else if ((object)type.Name == (object)_hexBinaryID)
value = null;
else if ((object)type.Name == (object)_base64BinaryID)
value = null;
else if ((object)type.Name == (object)_base64ID && ((object)type.Namespace == (object)_soapNsID || (object)type.Namespace == (object)_soap12NsID))
value = null;
else
value = null;
}
else if ((object)type.Namespace == (object)_schemaNonXsdTypesNsID)
{
if ((object)type.Name == (object)_charID)
value = default(Nullable<char>);
else if ((object)type.Name == (object)_guidID)
value = default(Nullable<Guid>);
else if ((object) type.Name == (object) _timeSpanID)
value = default(Nullable<TimeSpan>);
else
value = null;
}
else
value = null;
return value;
}