Не могли бы вы предоставить больше примеров кода и некоторый входной XML-документ? На основании предоставленной информации я написал небольшую примерную программу, которая работает как положено. У вас работает следующее?
Образец документа:
<?xml version="1.0" encoding="iso-8859-1"?>
<doc>
<test>Företag</test>
<test>Hallå</test>
</doc>
C #
using System;
using System.Xml.XPath;
class Program
{
static void Main(string[] args)
{
XPathDocument xpdoc = new XPathDocument(@"sample.xml");
XPathNavigator nav = xpdoc.CreateNavigator();
XPathNodeIterator iter = nav.Select("//*[text() = 'Företag']");
while (iter.MoveNext())
{
Console.WriteLine(iter.Current.ToString());
}
}
}
выход
Företag
Из приведенного примера кода видно, что вы используете класс Microsoft.Windows.Design.Documents.Trees.DocumentNode
. Однако в документации говорится, что этот класс не предназначен для непосредственного использования. Могу я спросить, что вы пытаетесь сделать?
Обновление: возможно, вы столкнулись с проблемой нормализации пробелов (что может быть сделано вашей надстройкой FireFox, а не в вашем коде). Вы пытались изменить свой XPath, заменив тест text() = 'Företag'
на normalize-space() = 'Företag'
(просто чтобы исключить случай, когда есть дополнительные начальные или конечные пробелы)?