" define application encoded null values Public Shared ReadOnly Property NullInteger() As Integer Get Return -1 End Get End Property Public Shared ReadOnly Property NullDate() As Date Get Return Date.MinValue End Get End Property Public Shared ReadOnly Property NullString() As String Get Return "" End Get End Property Public Shared ReadOnly Property NullBoolean() As Boolean Get Return False End Get End Property
" sets a field to an application encoded null value ( used in Presentation layer ) Public Shared Function SetNull(ByVal objField As Object) As Object If TypeOf objField Is Integer Then SetNull = NullInteger ElseIf TypeOf objField Is Date Then SetNull = NullDate ElseIf TypeOf objField Is String Then SetNull = NullString ElseIf TypeOf objField Is Boolean Then SetNull = NullBoolean Else Throw New NullReferenceException() End If End Function
" sets a field to an application encoded null value ( used in BLL layer ) Public Shared Function SetNull(ByVal objPropertyInfo As PropertyInfo) As Object Select Case objPropertyInfo.PropertyType.ToString Case "System.Int16", "System.Int32", "System.Int64", "System.Single", "System.Double", "System.Decimal" SetNull = NullInteger Case "System.DateTime" SetNull = NullDate Case "System.String", "System.Char" SetNull = NullString Case "System.Boolean" SetNull = NullBoolean Case Else Throw New NullReferenceException() End Select End Function
" convert an application encoded null value to a database null value ( used in DAL ) Public Shared Function GetNull(ByVal objField As Object, ByVal objDBNull As Object) As Object GetNull = objField If TypeOf objField Is Integer Then If objField = NullInteger Then GetNull = objDBNull End If ElseIf TypeOf objField Is Date Then If objField = NullDate Then GetNull = objDBNull End If ElseIf TypeOf objField Is String Then If objField = NullString Then GetNull = objDBNull End If ElseIf TypeOf objField Is Boolean Then If objField = NullBoolean Then GetNull = objDBNull End If Else Throw New NullReferenceException() End If End Function
" checks if a field contains an application encoded null value Public Shared Function IsNull(ByVal objField As Object) As Boolean If objField = SetNull(objField) Then IsNull = True Else IsNull = False End If End Function