LzmTW + uRuntimeHelper

来源:互联网 发布:淘宝网电视机顶盒架 编辑:程序博客网 时间:2024/05/17 04:54

 Author:水如烟  

Namespace LzmTW
    
Public Class uRuntimeHelper
        
Private Shared gInternalSyncObject As Object

        
Public Shared ReadOnly Property InternalSyncObject() As Object
            
Get
                
If gInternalSyncObject Is Nothing Then
                    
Dim tmpObj As New Object
                    System.Threading.Interlocked.CompareExchange(gInternalSyncObject, tmpObj, 
Nothing)
                
End If
                
Return gInternalSyncObject
            
End Get
        
End Property

        
Public Shared Function Converter(Of V, T)(ByVal item As V) As T
            
Dim tmp As Object = CType(item, Object)
            
Dim mResult As T = CType(tmp, T)
            
Return mResult
        
End Function

        
Public Shared Function ChangeType(ByVal value As ObjectByVal referObject As ObjectAs Object
            
Dim mResult As Object = System.Convert.ChangeType(value, Type.GetTypeCode(referObject.GetType))
            
Return mResult
        
End Function

        
Public Shared Function IsBaseType(ByVal value As ObjectAs Boolean
            
If value Is Nothing Then Return False

            
Dim mTypeCode As Integer = Type.GetTypeCode(value.GetType)

            
If mTypeCode = 1 Then Return False 'Object

            
Dim mTypeCodes As Integer() = CType([Enum].GetValues(GetType(TypeCode)), Integer())

            
Return Not (Array.IndexOf(Of Integer)(mTypeCodes, mTypeCode) = -1)
        
End Function

    
End Class


End Namespace
原创粉丝点击