Imports System
Imports System.Xml
Imports System.Data
'''Lädt und schreibt Einstellungen in settings file
Public Class Settings
#Region "Members"
Private _settings As XmlDocument
#End Region
#Region "Constructor"
Public Sub New()
Try
_settings = New XmlDocument
_settings.Load(AppDomain.CurrentDomain.BaseDirectory + "settings.xml")
Catch ex As Exception
Throw ex
End Try
End Sub
#End Region
#Region "Public methods"
'''Lädt ein Wert für ein setting aus dem config file
'''Der node xPath
'''Attribut name der zurückgegeben werden soll
'''Der Wert des Attributes
Public Function GetValueByXPath(ByVal xPath As String, ByVal attributeName As String) As String
Try
Dim node As XmlNode = _settings.SelectSingleNode(xPath)
If Not node Is Nothing Then
'node exisitiert
Return node.Attributes(attributeName).Value
Else
Return ""
End If
Catch ex As Exception
Throw ex
End Try
End Function
'''Gibt eine Liste aller XmlNodes zurück, welche unter dem angegebenen xPath existieren
'''
'''
Public Function GetNodeByXPath(ByVal xPath As String) As XmlNode
Try
Return _settings.SelectSingleNode(xPath)
Catch ex As Exception
Throw ex
End Try
End Function
'''Gibt das SqlTimeout für queries zurück
'''
Public Function GetSqlTimeout() As Integer
Try
Return Convert.ToDouble(_settings.SelectSingleNode("root/config/SqlTimeout").Attributes("seconds").InnerText)
Catch ex As Exception
Throw ex
End Try
End Function
#End Region
End Class