Initial
This commit is contained in:
98
Backup/BusinessFacade/NullHandler.vb
Normal file
98
Backup/BusinessFacade/NullHandler.vb
Normal file
@@ -0,0 +1,98 @@
|
||||
'''<summary>diese klasse ersetzt null values durch den parameter 'NullReplaceValue' von der parameter tabelle</summary>
|
||||
'''Achtung! dies funktioniert nicht mit allen daten typen! zur zeit ist der replace wert = -5648945
|
||||
'''dies heisst, dass sämtliche unsigned, binary, Datums und boolean-Datentypen nicht unterstützt werden.
|
||||
'''gut nachdenken befor neue datentypen hier eingetragen werden!
|
||||
Public Class NullHandler
|
||||
Public Shared _nullReplacerInt As Integer
|
||||
Public Shared _nullReplacerStr As String
|
||||
|
||||
|
||||
Shared Sub New()
|
||||
_nullReplacerInt = Integer.Parse(Config.GetParameterValue("NullReplaceValue"))
|
||||
_nullReplacerStr = Config.GetParameterValue("NullReplaceValue")
|
||||
End Sub
|
||||
|
||||
Public Shared Function CToInt16(ByVal o As Object) As Int16
|
||||
If o Is System.DBNull.Value Then
|
||||
Return CShort(_nullReplacerInt)
|
||||
Else
|
||||
If TypeOf o Is Int16 Then
|
||||
Return CShort(o)
|
||||
End If
|
||||
End If
|
||||
End Function
|
||||
|
||||
Public Shared Function CToInt32(ByVal o As Object) As Int32
|
||||
If o Is System.DBNull.Value Then
|
||||
Return _nullReplacerInt
|
||||
Else
|
||||
If TypeOf o Is Int32 Then
|
||||
Return CInt(o)
|
||||
End If
|
||||
End If
|
||||
End Function
|
||||
|
||||
Public Shared Function CToInt64(ByVal o As Object) As Int64
|
||||
If o Is System.DBNull.Value Then
|
||||
Return CLng(_nullReplacerInt)
|
||||
Else
|
||||
If TypeOf o Is Int64 Then
|
||||
Return CLng(o)
|
||||
End If
|
||||
End If
|
||||
End Function
|
||||
|
||||
Public Shared Function CToSingle(ByVal o As Object) As Single
|
||||
If o Is System.DBNull.Value Then
|
||||
Return CSng(_nullReplacerInt)
|
||||
Else
|
||||
If TypeOf o Is Single Then
|
||||
Return CSng(o)
|
||||
End If
|
||||
End If
|
||||
End Function
|
||||
|
||||
Public Shared Function CToDouble(ByVal o As Object) As Double
|
||||
If o Is System.DBNull.Value Then
|
||||
Return CDbl(_nullReplacerInt)
|
||||
Else
|
||||
If TypeOf o Is Double Then
|
||||
Return CDbl(o)
|
||||
End If
|
||||
End If
|
||||
End Function
|
||||
|
||||
Public Shared Function CToDecimal(ByVal o As Object) As Decimal
|
||||
If o Is System.DBNull.Value Then
|
||||
Return CDec(_nullReplacerInt)
|
||||
Else
|
||||
If TypeOf o Is Decimal Then
|
||||
Return CDec(o)
|
||||
End If
|
||||
End If
|
||||
End Function
|
||||
|
||||
Public Shared Function CToString(ByVal o As Object) As String
|
||||
If o Is System.DBNull.Value Then
|
||||
Return _nullReplacerStr
|
||||
Else
|
||||
If TypeOf o Is String Then
|
||||
Return CStr(o)
|
||||
End If
|
||||
End If
|
||||
End Function
|
||||
|
||||
'''<summary>spezialfall wird auf DateTime.MinValue gesetzt</summary>
|
||||
'''<param name="o"></param>
|
||||
|
||||
Public Shared Function CToDateTime(ByVal o As Object) As DateTime
|
||||
If o Is System.DBNull.Value Then
|
||||
Return DateTime.MinValue
|
||||
Else
|
||||
If TypeOf o Is DateTime Then
|
||||
Return CDate(o)
|
||||
End If
|
||||
End If
|
||||
End Function
|
||||
|
||||
End Class
|
||||
Reference in New Issue
Block a user