Créer xmlDocument à partir d'un autre document
Je suis en train de créer un xmldocument
objet par un autre XML
voir le code ci-dessous:
objNewsDoc.LoadXml(strNewsDetail); //Current XML
XmlDocument docRss = new XmlDocument(); //new Xml Object i Want to create
XmlElement news = docRss.CreateElement("news"); //creating the wrapper news node
news.AppendChild(objNewsDoc.SelectSingleNode("newsItem")); //adding the news item from old doc
Erreur: Le nœud à insérer à partir d'un autre document de contexte
Edit 1 Compleate Bloc de code:
try
{
XmlDocument objNewsDoc = new XmlDocument();
string strNewsXml = getNewsXml();
objNewsDoc.LoadXml(strNewsXml);
var nodeNewsList = objNewsDoc.SelectNodes("news/newsListItem");
XmlElement news = docRss.CreateElement("news");
foreach (XmlNode objNewsNode in nodeNewsList)
{
string newshref = objNewsNode.Attributes["href"].Value;
string strNewsDetail = getNewsDetailXml(newshref);
try
{
objNewsDoc.LoadXml(strNewsDetail);
XmlNode importNewsItem = docRss.ImportNode(objNewsDoc.SelectSingleNode("newsItem"), true);
news.AppendChild(importNewsItem);
}
catch (Exception ex)
{
Console.Write(ex.Message);
}
}
docRss.Save(Response.Output);
}
catch (Exception ex)
{
Console.Write(ex.Message);
}
OriginalL'auteur Champ | 2012-10-15
Vous devez vous connecter pour publier un commentaire.
Vous devez utiliser le L'Importation De Nœud méthode pour importer les XmlNode à partir du premier document dans le contexte de la seconde:
MODIFIER
Vous êtes très proche de votre réponse, le problème principal que vous avez maintenant, c'est que vous avez besoin pour ajouter de nouvelles de votre élément de votre document principal. Je ne recommande pas de faire ce qui suit si vous voulez que votre document de sortie ressemble à ceci:
Plutôt que de créer un nouveau XmlElement, des nouvelles, au lieu de cela, lorsque vous créez docRSS, procédez de la manière suivante:
Vous avez maintenant un XmlDocument qui ressemble à ceci:
Alors, plutôt que de
news.AppendChild
, il suffit de:Cela ajoute chaque
newsItem
en vertu de lanews
élément (qui dans ce cas est l'élément de document).J'ai ajouter le compleate bloc de code pouvez-vous s'il vous plaît aider?
Vous êtes si proche! Le problème, c'est que vous avez créé tous les xml que vous voulez, mais vous n'avez pas ensuite ajouté les nouvelles élément de votre document de sortie. Voir ma réponse mis à jour.
OriginalL'auteur dash