[VB.Net] Comment lire un dataconfiguration.config ?
Bonjour,
Jai une appli qui utilise le data access application building block de Microsoft's Enterprise Library (patterns and practices site).
Je voudrais lire les données de connection. Pour faire cela, j'essayes de lire le fichier dataconfiguration.config file et obtenir le attribute nodes de tous les éléments du noeud connectionString.
J'ai un problème, je pars en erreur
Mon fichier dataconfiguration.config file
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49
| <?xml version="1.0" encoding="utf-8"?>
<dataConfiguration>
<xmlSerializerSection
type="Microsoft.Practices.EnterpriseLibrary.Data.Configuration.DatabaseSettings,Microsoft.Practices.EnterpriseLibrary.Data, Version=1.0.0.0,Culture=neutral, PublicKeyToken=null">
<enterpriseLibrary.databaseSettings
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
defaultInstance="s09\Magic.prod"
xmlns="http://www.microsoft.com/practices/enterpriselibrary/08-31-2004/data">
<databaseTypes>
<databaseType name="Sql Server"
type="Microsoft.Practices.EnterpriseLibrary.Data.Sql.Sql Database,
Microsoft.Practices.EnterpriseLibrary.Data, Version=1.0.0.0,
Culture=neutral, PublicKeyToken=null" />
</databaseTypes>
<instances>
<instance name="s11\eleven.prod" type="Sql Server"
connectionString="s11\eleven.prod" />
<instance name="s09\Magic.prod" type="Sql Server"
connectionString="s09\Magic.prod" />
</instances>
<connectionStrings>
<connectionString name="s11\eleven.prod">
<parameters>
<parameter name="database" value="jt1" isSensitive="false" />
<parameter name="Integrated Security" value="True" isSensitive="false" />
<parameter name="Max Pool Size" value="50" isSensitive="false" />
<parameter name="Min Pool Size" value="0" isSensitive="false" />
<parameter name="Connection Lifetime" value="30" isSensitive="false" />
<parameter name="Pooling" value="True" isSensitive="false" />
<parameter name="server" value="admsitsdbs11\eleven" isSensitive="false" />
</parameters>
</connectionString>
<connectionString name="s09\Magic.prod">
<parameters>
<parameter name="Connection Lifetime" value="30" isSensitive="false" />
<parameter name="database" value="s1" isSensitive="false" />
<parameter name="Integrated Security" value="True" isSensitive="false" />
<parameter name="Max Pool Size" value="5" isSensitive="false" />
<parameter name="Min Pool Size" value="0" isSensitive="false" />
<parameter name="Pooling" value="True" isSensitive="false" />
<parameter name="server" value="admsitsdbs09\magic" isSensitive="false" />
</parameters>
</connectionString>
</connectionStrings>
</enterpriseLibrary.databaseSettings>
</xmlSerializerSection>
</dataConfiguration> |
voila mon code qui ne marche pas
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43
|
Dim filename As String
Dim ds As DataSet
Dim dt As DataTable
Dim row As DataRow
Dim config As XmlDataDocument
Dim node As XmlNode
Dim nodeList As XmlNodeList
Dim element As XmlElement
Dim nodePath As String
Try
filename = Application.StartupPath + "\" + "dataconfiguration.config"
ds = New DataSet
'ds.ReadXmlSchema(filename)
ds.ReadXml(filename)
config = New XmlDataDocument(ds)
'config.Load(filename)
'nodePath =
"//dataConfiguration/xmlSerializerSection/enterpriseLibrary.databaseSettings/connectionStrings"
'nodePath =
"/dataConfiguration/xmlSerializerSection/enterpriseLibrary.databaseSettings/connectionStrings"
'nodePath =
"dataConfiguration/xmlSerializerSection/enterpriseLibrary.databaseSettings/connectionStrings"
'nodePath = "/dataConfiguration/xmlSerializerSection/*/connectionStrings"
'nodePath = "/*/*/*/connectionStrings"
'nodePath =
"descendant::dataConfiguration/xmlSerializerSection/enterpriseLibrary.databaseSettings"
'nodePath =
"descendant::xmlSerializerSection/enterpriseLibrary.databaseSettings"
'nodePath = "//connectionString"
nodePath = "/dataConfiguration/xmlSerializerSection/*/connectionStrings"
nodeList = config.SelectNodes(nodePath)
'nodeList =
config.ChildNodes(0).ChildNodes(0).ChildNodes(0).SelectNodes("//connectionStrings")
Catch ex As Exception
Throw ex
End Try |
Tout conseil que vous pouvez me donner sera apprécié. Merci d'avance