Move portable thread pool to shared partition (dotnet/corert#7828)
[mono-project.git] / netcore / System.Private.CoreLib / shared / System / DBNull.cs
blobe01071c77bf4157cac0483c24513b7c3fed7d137
1 // Licensed to the .NET Foundation under one or more agreements.
2 // The .NET Foundation licenses this file to you under the MIT license.
3 // See the LICENSE file in the project root for more information.
5 using System.Runtime.Serialization;
7 namespace System
9 [Serializable]
10 public sealed class DBNull : ISerializable, IConvertible
12 private DBNull()
16 private DBNull(SerializationInfo info, StreamingContext context)
18 throw new NotSupportedException(SR.NotSupported_DBNullSerial);
21 public static readonly DBNull Value = new DBNull();
23 public void GetObjectData(SerializationInfo info, StreamingContext context)
25 UnitySerializationHolder.GetUnitySerializationInfo(info, UnitySerializationHolder.NullUnity);
28 public override string ToString()
30 return string.Empty;
33 public string ToString(IFormatProvider? provider)
35 return string.Empty;
38 public TypeCode GetTypeCode()
40 return TypeCode.DBNull;
43 bool IConvertible.ToBoolean(IFormatProvider? provider)
45 throw new InvalidCastException(SR.InvalidCast_FromDBNull);
48 char IConvertible.ToChar(IFormatProvider? provider)
50 throw new InvalidCastException(SR.InvalidCast_FromDBNull);
53 sbyte IConvertible.ToSByte(IFormatProvider? provider)
55 throw new InvalidCastException(SR.InvalidCast_FromDBNull);
58 byte IConvertible.ToByte(IFormatProvider? provider)
60 throw new InvalidCastException(SR.InvalidCast_FromDBNull);
63 short IConvertible.ToInt16(IFormatProvider? provider)
65 throw new InvalidCastException(SR.InvalidCast_FromDBNull);
68 ushort IConvertible.ToUInt16(IFormatProvider? provider)
70 throw new InvalidCastException(SR.InvalidCast_FromDBNull);
73 int IConvertible.ToInt32(IFormatProvider? provider)
75 throw new InvalidCastException(SR.InvalidCast_FromDBNull);
78 uint IConvertible.ToUInt32(IFormatProvider? provider)
80 throw new InvalidCastException(SR.InvalidCast_FromDBNull);
83 long IConvertible.ToInt64(IFormatProvider? provider)
85 throw new InvalidCastException(SR.InvalidCast_FromDBNull);
88 ulong IConvertible.ToUInt64(IFormatProvider? provider)
90 throw new InvalidCastException(SR.InvalidCast_FromDBNull);
93 float IConvertible.ToSingle(IFormatProvider? provider)
95 throw new InvalidCastException(SR.InvalidCast_FromDBNull);
98 double IConvertible.ToDouble(IFormatProvider? provider)
100 throw new InvalidCastException(SR.InvalidCast_FromDBNull);
103 decimal IConvertible.ToDecimal(IFormatProvider? provider)
105 throw new InvalidCastException(SR.InvalidCast_FromDBNull);
108 DateTime IConvertible.ToDateTime(IFormatProvider? provider)
110 throw new InvalidCastException(SR.InvalidCast_FromDBNull);
113 object IConvertible.ToType(Type type, IFormatProvider? provider)
115 return Convert.DefaultToType((IConvertible)this, type, provider);