2014-12-15 2 views
0

Я пытаюсь преобразовать HTML в уценку в приложении магазина Windows. Следующий код работает в проекте .NET 4 MVCИспользование ReplaceChild в HtmlAgilityPack в WinRT

HtmlDocument doc = new HtmlDocument(); 
doc.LoadHtml(html); 

foreach (var x in doc.DocumentNode.SelectNodes("//strong")) 
{ 
    x.ParentNode.ReplaceChild(
      HtmlAgilityPack.HtmlNode.CreateNode("**" + x.InnerHtml + "**"), 
    x); 
} 

SelectNodes не доступны в WinRT построить так при переносе кода я заменил это с Потомками.

foreach (var x in doc.DocumentNode.Descendants("//strong")) 
{ 
    x.ParentNode.ReplaceChild(
      HtmlAgilityPack.HtmlNode.CreateNode("**" + x.InnerHtml + "**"), 
    x); 
} 

Этот код оставляет HtmlDocument неизменным. Я что-то делаю неправильно, или это ошибка?

ответ

0

Descendants ожидает имя элемента, а не XPath, поэтому ваш код не возвращает никаких элементов, и документ остается неизменным.

Вы должны удалить слэши:

foreach (var x in doc.DocumentNode.Descendants("strong")) 
+0

, что это было. Я получаю еще одну проблему, но я сохраню ее для отдельного потока. Благодаря! – roryok

Смежные вопросы