私の.netアプリケーションに含まれていないapp.configファイルを変更しようとしています。 他のアプリケーションがこれらの値を1行ずつ読み込み、データベース(n)の値をサーバー(n)の値と関連付けているため、自分のキーを一意にして静的キー(Server1またはServer2)の下に表示する必要があります。別のアプリケーションapp.configのキー値のペアを更新する
外部の.configファイルに対して標準のapp.configメソッドを使用する方法がわからないので、Xmlドキュメントクラスを使用しています。
XMLファイルの例:
<add key="server1" value="SERVER\SQL2000" />
<add key="database1" value="ggfd" />
<add key="database2" value="dvdv" />
<add key="server2" value="SERVER\SQL2005" />
<add key="database3" value="trvs" />
<add key="database4" value="tgdfs" />
<add key="database5" value="trvs" />
私は新しいノードを書き込む\読み取ることができます。
Dim MyKey As String = "database" & No?
Dim XmlDocument As New XmlDocument
Dim XmlNode As XmlNode
Dim XmlRoot As XmlNode
Dim XmlKey As XmlNode
Dim XmlValue As XmlNode
Save_Config_Parameter = ""
XmlDocument.Load("app.config")
XmlNode = XmlDocument.DocumentElement.SelectSingleNode("/configuration/appSettings/add[@key=""" & MyKey & """]")
If XmlNode Is Nothing Then
XmlNode = XmlDocument.CreateNode(XmlNodeType.Element, "add", "")
XmlKey = XmlDocument.CreateNode(XmlNodeType.Attribute, "key", "")
XmlKey.Value = MyKey
XmlNode.Attributes.SetNamedItem(XmlKey)
XmlValue = XmlDocument.CreateNode(XmlNodeType.Attribute, "value", "")
XmlValue.Value = MyValue
XmlNode.Attributes.SetNamedItem(XmlValue)
XmlRoot = XmlDocument.DocumentElement.SelectSingleNode("/configuration/appSettings")
If Not XmlRoot Is Nothing Then
XmlRoot.AppendChild(XmlNode)
Else
Save_Config_Parameter = "ERROR"
End If
Else
XmlNode.Attributes.GetNamedItem("value").Value = MyValue
End If
XmlDocument.Save("app.config")
しかし、キーをretrivingする方法を見つけることができませんそれが存在するかどうかを確認するより重要なことに、値を増やしますか?
ありがとうございました。