J'essaie de modifier un connectionString dans un fichier RDL, qui consiste en des nœuds xml dynamiquement. mais je suis seulement en mesure de récupérer la racine en utilisant un /
Je ne peux pas récupérer tous les autres noeuds par exemple lorsque j'essaie de récupérer le connectString il apparaît comme nul.Comment modifier dynamiquement la chaîne de connexion dans un fichier RDl?
XmlDocument xml = new XmlDocument();
xml.Load(selectedFiles[0].ToString());
var connectionString = xml.SelectSingleNode("/");
le xml pour le fichier RDL:
<?xml version="1.0" encoding="utf-8"?>
<Report xmlns:rd="http://schemas.microsoft.com/SQLServer/reporting/reportdesigner" xmlns:cl="http://schemas.microsoft.com/sqlserver/reporting/2010/01/componentdefinition" xmlns="http://schemas.microsoft.com/sqlserver/reporting/2010/01/reportdefinition">
<AutoRefresh>0</AutoRefresh>
<DataSources>
<DataSource Name="DataSource1">
<ConnectionProperties>
<DataProvider>SQL</DataProvider>
<ConnectString>Data Source=gbr-t-sql-001;Initial Catalog=Neptune2Dev</ConnectString>
<IntegratedSecurity>true</IntegratedSecurity>
</ConnectionProperties>
<rd:SecurityType>Integrated</rd:SecurityType>
<rd:DataSourceID>70fcaa8f-d76a-4919-a53c-ba313ca99926</rd:DataSourceID>
</DataSource>
</DataSources>
<DataSets>
<DataSet Name="DataSet1">
<Query>
<DataSourceName>DataSource1</DataSourceName>
<QueryParameters>
<QueryParameter Name="@profileID">
<Value>=Parameters!profileID.Value</Value>
</QueryParameter>
</QueryParameters>
<CommandType>StoredProcedure</CommandType>
<CommandText>Report_BylineSummary</CommandText>
Il est comme nulle var connectionString = xml.SelectSingleNode ("/ Rapport/DataSources [@Name = \" DataSource1 \ "]/ConnectionProperties/ConnectString") – Xerxes
Comme je l'ai dit, vous devez gérer correctement les espaces de noms pour que cela fonctionne. http://support.microsoft.com/kb/316913 – Oscar