J'ai un fichier XML stocké dans la base de données en tant que tableau d'octets (octet []). Maintenant, je dois obtenir ce tableau d'octets à partir de la base de données que je fais avec succès et le transmettre à XDocument comme ce qui suit:octet [] vers XML avec .NET/C#
public Dictionary<string, string> ReadFromByte(byte[] UserData, string toplevelnode, string firstattribute, string secondattribute)
{
XDocument doc = XDocument.Load(UserData);
Dictionary<string, string> dictionary = doc.Descendants(toplevelnode).ToDictionary(x => x.Attribute(firstattribute).Value,
x => x.Attribute(secondattribute).Value);
return dictionary;
}
Ce code fonctionne bien si je passe à XDocument un fichier sur le serveur au format XML . Cependant, cela ne fonctionne pas si je passe un tableau byte []. Tout indice que je devrais convertir le tableau byte [] en XML serait grandement apprécié.
Merci.
Comment avez-vous stocké le document xml dans la base de données? utiliser la sérialisation ou simplement utiliser des octets du contenu xml? – crypted
Vous devriez pouvoir écrire la valeur du champ db dans un MemoryStream et envoyer ce flux au XDocument. – faester
Oui, comment vous obtenez le XML hors de la base de données tout dépend de la façon dont vous l'avez obtenu là-bas en premier lieu. Vous devez nous dire comment vous l'avez eu dans la base de données. –