Mon prédécesseur a donc décidé d'inclure une colonne 'xml_data' dans la base de données pour une application. Je dois maintenant utiliser certaines informations stockées dans ce fichier XML pour une autre application. Je fais une requête normale pour extraire le xml de la base de données, et j'essaie d'utiliser LINQ pour extraire les données dont j'ai besoin du XML. Voici quelques XML exemple:LINQ et XML ... ont besoin d'aide pour déboguer ce
<?xml version="1.0"?>
<data>
<field>
<name normalized="id_num"></name>
<value>
<![CDATA[12345]]>
</value>
</field>
<field>
<name normalized="blah"></name>
<value>
<![CDATA[asdfasdf]]>
</value>
</field>
...
</data>
puisque chaque ligne a son propre document XML qui suit ce modèle, je suis itérer à travers les résultats SQL et d'essayer d'extraire la valeur que j'ai besoin du XML comme ceci:
List<String> collection = new List<String>();
while (sqlreader.Read())
{
XElement response = XElement.Parse(sqlreader["xml_data"].ToString());
var name = from field in response.Elements("field")
where (string)field.Element("name").Attribute("normalized") == "id_num"
select field.Element("value").Value;
collection.Add(name.ToString());
}
Je sais que ce n'est pas juste parce que je continue à obtenir ce retour au lieu de la valeur que j'ai besoin:
System.Linq.Enumerable+WhereSelectEnumerableIterator`2[System.Xml.Linq.XElement,System.String]
PS S'il vous plaît soyez doux, je suis un programmeur Python et ne suis pas vraiment familier avec C# ou .NET.
vous êtes l'homme .... –