'Create/Write Default Config File
Dim XmlWrt As Global.System.Xml.XmlWriter = Global.System.Xml.XmlWriter.Create(ConfigFile, _
New Global.System.Xml.XmlWriterSettings() With {.Indent = True, .Encoding = Encoding.UTF8})
With XmlWrt
.WriteStartDocument()
.WriteStartElement("Root")
.WriteStartElement("Environments") 'Root|Environments
.WriteStartElement("Default") 'Root|Environments|Default
.WriteAttributeString("Env", "Qual")
.WriteEndElement() '/Root|Environments|Default
.WriteEndElement() '/Root|Environments
.WriteStartElement("Systems") 'Root|Systems
.WriteStartElement("Qual") 'Root|Systems|Qual
.WriteComment("Don't remove or rename the Default...")
.WriteElementString("isEnabled", "False")
.WriteStartElement("WebService_AW_URL")
.WriteCData("https://localhost/")
.WriteEndElement()
.WriteElementString("APIKey", "01234ABCDE")
.WriteElementString("Username", "Username")
.WriteElementString("Password", "P@ssw0rd")
.WriteStartElement("WebService_LDSD_URL")
.WriteCData("http://host/LDSDDEV_01.EventManager/EventLog.asmx?WSDL")
.WriteEndElement()
.WriteElementString("ConfigID", "0")
.WriteEndElement() '/Root|Systems|Qual
.WriteEndElement() '/Root|Systems
.WriteEndElement() '/Root
.WriteEndDocument()
.Close()
End With
'Create XML as STRING (and force UTF8)
Dim sXML As String
Using xStream As New IO.MemoryStream()
Using xWriter As System.Xml.XmlWriter = System.Xml.XmlWriter.Create(xStream, New System.Xml.XmlWriterSettings With {.Indent = False, .Encoding = New UTF8Encoding(False)})
xWriter.WriteStartDocument()
xWriter.WriteStartElement("Colors")
xWriter.WriteElementString("Color", "RED")
xWriter.WriteEndDocument()
End Using
sXML = Encoding.Default.GetString(xStream.ToArray())
End Using
'Create XML as STRING (alternative)
Dim sXML As New StringBuilder()
Using xWriter = Global.System.Xml.XmlTextWriter.Create(New IO.StringWriter(sXML), _
New Global.System.Xml.XmlWriterSettings With {.Indent = True, .Encoding = Encoding.UTF8})
xWriter.WriteStartDocument()
xWriter.WriteStartElement("Root")
xWriter.WriteStartElement("SpezChars")
xWriter.WriteCData(":#@*รง%&")
xWriter.WriteEndElement()
xWriter.WriteElementString("EventSource", EventSource)
xWriter.WriteElementString("EventType", EventType)
xWriter.WriteElementString("ProcessGuid", ProcessGuid)
xWriter.WriteElementString("iRet", iRet)
xWriter.WriteElementString("sRet", sRet)
xWriter.WriteEndElement() 'Root
xWriter.WriteEndDocument()
xWriter.Close()
End Using
Dim sString As String = sXML.ToString
'Read Config from file
If IO.File.Exists(ConfigFile) Then
Dim doc As XDocument = XDocument.Load(ConfigFile)
Dim oElement As XElement
'Test integrity
If doc.Descendants("Root").Count = 0 Then Exit Sub
If doc.Root.Descendants("Environments").Count = 0 Then Exit Sub
If doc.Root..Descendants("Default").Count = 0 Then Exit Sub
If doc.Root...FirstOrDefault.Attribute("Env") Is Nothing Then Exit Sub
'System
oElement = doc...Descendants(ReqSys).FirstOrDefault
For Each itm In oElement.Elements
If (itm.NodeType = Global.System.Xml.XmlNodeType.Element) Then
Select Case itm.Name
Case "isEnabled" : isEnabled = CBool(itm.Value)
Case "WebService_AW_URL" : WebService_AW_URL = itm.Value
Case "APIKey" : APIKey = itm.Value
End Select
End If
Next
End If
'Read XML from String
Dim xParams As XDocument = XDocument.Parse("")
Dim sString As String = xParams.Root..Value