當前位置: 首頁>>代碼示例>>VB.NET>>正文


VB.NET ConfigurationConverterBase類代碼示例

本文整理匯總了VB.NET中System.Configuration.ConfigurationConverterBase的典型用法代碼示例。如果您正苦於以下問題:VB.NET ConfigurationConverterBase類的具體用法?VB.NET ConfigurationConverterBase怎麽用?VB.NET ConfigurationConverterBase使用的例子?那麽, 這裏精選的類代碼示例或許可以為您提供幫助。


在下文中一共展示了ConfigurationConverterBase類的3個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的VB.NET代碼示例。

示例1: ValidateType

' 導入命名空間
Imports System.Collections.Generic
Imports System.Text
Imports System.Configuration
Imports System.Globalization
Imports System.ComponentModel




NotInheritable Public Class CustomTimeSpanMinutesConverter
    Inherits ConfigurationConverterBase
    
    Friend Function ValidateType(ByVal value As Object, _
    ByVal expected As Type) As Boolean
        Dim result As Boolean

        If Not (value Is Nothing) _
        AndAlso value.ToString() <> expected.ToString() Then
            result = False
        Else
            result = True
        End If
        Return result

    End Function 'ValidateType
    
    
    Public Overrides Function CanConvertTo( _
    ByVal ctx As ITypeDescriptorContext, _
    ByVal type As Type) As Boolean
        Return (type.ToString() = GetType(String).ToString())

    End Function 'CanConvertTo
    
    Public Overrides Function CanConvertFrom( _
    ByVal ctx As ITypeDescriptorContext, _
    ByVal type As Type) As Boolean
        Return (type.ToString() = GetType(String).ToString())

    End Function 'CanConvertFrom
    
    Public Overrides Function ConvertTo( _
    ByVal ctx As ITypeDescriptorContext, _
    ByVal ci As CultureInfo, ByVal value As Object, _
    ByVal type As Type) As Object
        ValidateType(value, GetType(TimeSpan))

        Dim data As Long = _
        Fix(CType(value, TimeSpan).TotalMinutes)

        Return data.ToString(CultureInfo.InvariantCulture)

    End Function 'ConvertTo
    
    Public Overrides Function ConvertFrom( _
    ByVal ctx As ITypeDescriptorContext, _
    ByVal ci As CultureInfo, ByVal data As Object) As Object

        Dim min As Long = _
        Long.Parse(CStr(data), CultureInfo.InvariantCulture)

        Return TimeSpan.FromMinutes(System.Convert.ToDouble(min))

    End Function 'ConvertFrom

End Class
開發者ID:VB.NET開發者,項目名稱:System.Configuration,代碼行數:67,代碼來源:ConfigurationConverterBase

示例2: New

' Define a custom section.
NotInheritable Public Class CustomSection
    Inherits ConfigurationSection
    
    
    Public Sub New() 
    
    End Sub
    
    
    
    <ConfigurationProperty("fileName", _
    DefaultValue:="   default.txt  "), _
    TypeConverter(GetType(WhiteSpaceTrimStringConverter))> _
    Public Property FileName() As String
        Get
            Return CStr(Me("fileName"))
        End Get
        Set(ByVal value As String)
            Me("fileName") = value
        End Set
    End Property

    
    <ConfigurationProperty("maxIdleTime"), _
    TypeConverter(GetType(CustomizedTimeSpanMinutesConverter))> _
    Public Property MaxIdleTime() As TimeSpan
        Get
            Return CType(Me("maxIdleTime"), TimeSpan)
        End Get
        Set(ByVal value As TimeSpan)
            Me("maxIdleTime") = value
        End Set
    End Property
    
    <ConfigurationProperty("timeDelay", _
    DefaultValue:="infinite"), _
    TypeConverter(GetType(InfiniteTimeSpanConverter))> _
    Public Property TimeDelay() As TimeSpan
        Get
            Return CType(Me("timeDelay"), TimeSpan)
        End Get
        Set(ByVal value As TimeSpan)
            Me("timeDelay") = Value
        End Set
    End Property
    
    <ConfigurationProperty("cdStr", _
    DefaultValue:="str0, str1", _
    IsRequired:=True), _
    TypeConverter(GetType(CommaDelimitedStringCollectionConverter))> _
    Public Property CdStr() As StringCollection
        Get
            Return CType(Me("cdStr"), StringCollection)
        End Get

        Set(ByVal value As StringCollection)
            Me("cdStr") = value
        End Set
    End Property
    
    
    Public Enum Permissions
        FullControl = 0
        Modify = 1
        ReadExecute = 2
        Read = 3
        Write = 4
        SpecialPermissions = 5
    End Enum 'Permissions
    
    
    <ConfigurationProperty("permission", _
    DefaultValue:=Permissions.Read)> _
    Public Property Permission() As Permissions
        Get
            Return CType(Me("permission"), Permissions)
        End Get

        Set(ByVal value As Permissions)
            Me("permission") = Value
        End Set
    End Property
    
    
    <ConfigurationProperty("maxUsers", _
    DefaultValue:="infinite"), _
    TypeConverter(GetType(InfiniteIntConverter))> _
    Public Property MaxUsers() As Integer
        Get
            Return Fix(Me("maxUsers"))
        End Get
        Set(ByVal value As Integer)
            Me("maxUsers") = Value
        End Set
    End Property
End Class
開發者ID:VB.NET開發者,項目名稱:System.Configuration,代碼行數:97,代碼來源:ConfigurationConverterBase

示例3: New

' 導入命名空間
Imports System.Collections.Generic
Imports System.Text
Imports System.Configuration
Imports System.Globalization
Imports System.ComponentModel



' Define a custom section.

NotInheritable Public Class CustomSection
   Inherits ConfigurationSection
   
   
   Public Sub New()
   End Sub
   
   
    <ConfigurationProperty("fileName", _
    DefaultValue:="default.txt", _
    IsRequired:=True, IsKey:=False), _
    StringValidator(InvalidCharacters:=" ~!@#$%^&*()[]{}/;'""|\", _
    MinLength:=1, MaxLength:=60)> _
    Public Property FileName() As String
        Get
            Return CStr(Me("fileName"))
        End Get
        Set(ByVal value As String)
            Me("fileName") = value
        End Set
    End Property
   
   
   
    <ConfigurationProperty("maxIdleTime"), _
    TypeConverter(GetType(TsMinutesConverter))> _
    Public Property MaxIdleTime() As TimeSpan
        Get
            Return CType(Me("maxIdleTime"), TimeSpan)
        End Get
        Set(ByVal value As TimeSpan)
            Me("maxIdleTime") = Value
        End Set
    End Property

End Class


NotInheritable Public Class TsMinutesConverter
   Inherits ConfigurationConverterBase
   
   Friend Function ValidateType(value As Object, expected As Type) As Boolean
      Dim result As Boolean
      
        If Not (value Is Nothing) _
        AndAlso (value.GetType().Equals(expected) <> True) Then
            result = False
        Else
            result = True
        End If
      Return result
   End Function 'ValidateType
   
   
    Public Overrides Function CanConvertTo( _
    ByVal ctx As ITypeDescriptorContext, _
    ByVal type As Type) As Boolean

        Return type.Equals(GetType(String))

    End Function 'CanConvertTo
   

    Public Overrides Function CanConvertFrom( _
    ByVal ctx As ITypeDescriptorContext, _
    ByVal type As Type) As Boolean

        Return type.Equals(GetType(String))

    End Function 'CanConvertFrom
   

    Public Overrides Function ConvertTo( _
    ByVal ctx As ITypeDescriptorContext, ByVal ci As CultureInfo, _
    ByVal value As Object, ByVal type As Type) As Object
        ValidateType(value, GetType(TimeSpan))

        Dim data As Long = _
        Fix(CType(value, TimeSpan).TotalMinutes)

        Return data.ToString(CultureInfo.InvariantCulture)

    End Function 'ConvertTo
   
   
    Public Overrides Function ConvertFrom( _
    ByVal ctx As ITypeDescriptorContext, ByVal ci As CultureInfo, _
    ByVal data As Object) As Object

        Dim min As Long = _
        Long.Parse(CStr(data), _
        CultureInfo.InvariantCulture)

        Return TimeSpan.FromMinutes( _
        System.Convert.ToDouble(min))

    End Function 'ConvertFrom
End Class

Class UsingConfigutationConverterBase
   
   
   ' Create a custom section.
   Shared Sub CreateSection()
      Try
         
         Dim customSection As CustomSection
         
         ' Get the current configuration file.
            Dim config _
            As System.Configuration.Configuration = _
            ConfigurationManager.OpenExeConfiguration( _
            ConfigurationUserLevel.None)
         
         ' Create the section entry  
         ' in the <configSections> and the 
         ' related target section in <configuration>.
         If config.Sections("CustomSection") Is Nothing Then
            customSection = New CustomSection()
            config.Sections.Add("CustomSection", customSection)
            customSection.SectionInformation.ForceSave = True
            config.Save(ConfigurationSaveMode.Full)
         End If
      Catch err As ConfigurationErrorsException
         Console.WriteLine(err.ToString())
      End Try
   End Sub
    
   
   
   ' Change custom section and write it to disk.
   Shared Sub SerializeCustomSection()
      Try
            Dim config _
               As System.Configuration.Configuration = _
               ConfigurationManager.OpenExeConfiguration( _
               ConfigurationUserLevel.None)

            Dim customSection _
            As CustomSection = _
            config.Sections.Get("CustomSection")
         Dim ts As New TimeSpan(1, 30, 30)
         
         customSection.MaxIdleTime = ts
         
         config.Save()
         
            Dim maxIdleTime As String = _
            customSection.MaxIdleTime.ToString()
         
            Console.WriteLine( _
            "New max idle time: {0}", maxIdleTime)
      Catch e As Exception
         Console.WriteLine(e.ToString())
      End Try
   End Sub
    
   
   ' Read custom section from disk.
   Shared Sub DeserializeCustomSection()
      
      Try
            Dim config _
            As System.Configuration.Configuration = _
            ConfigurationManager.OpenExeConfiguration( _
            ConfigurationUserLevel.None)
         
            Dim customSection _
            As CustomSection = _
            config.Sections.Get("CustomSection")
         
            Dim maxIdleTime As TimeSpan = _
            customSection.MaxIdleTime
         
         
            Console.WriteLine( _
            "Max idle time: {0}", maxIdleTime.ToString())
      Catch e As Exception
         Console.WriteLine(e.ToString())
      End Try
   End Sub
   

    Public Overloads Shared Sub Main(ByVal args() As String)
        CreateSection()
        SerializeCustomSection()
        DeserializeCustomSection()
    End Sub
End Class
開發者ID:VB.NET開發者,項目名稱:System.Configuration,代碼行數:200,代碼來源:ConfigurationConverterBase


注:本文中的System.Configuration.ConfigurationConverterBase類示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。