Dobry den, mam vlastní objektovou nastavbu nad konfiguracnim souborem, který obsahuje root, rodice, deti, hodnotove elementy atd. Chtel jsem se pridrzet alespoň trochu implementaci podle DOM, proto jsem chtěl podle xpath najit element odpovídající tomuto vyrazu. Proto mam:
public CfgNode SelectValueNode(CfgNode cfgNode, string nodePath, int indexInPath)
{
CfgNode retNode = null;
string nodeInPath = string.Empty;
char[] nodesSeparator = {'/'};
string[] nodesNames = nodePath.Split(nodesSeparator);
if (nodesNames.Length > indexInPath)
{
nodeInPath = nodesNames[indexInPath];
}
if (cfgNode.HasChildren)
{
foreach (CfgNode childNode in cfgNode.ChildNodes)
{
if ((childNode.nodeName != string.Empty) && (childNode.nodeName == nodeInPath))
{
Console.WriteLine(childNode.nodeName);
retNode = SelectValueNode(childNode, nodePath, indexInPath + 1);
}
}
}
return retNode;
}
Jenze rekurze to nevyresila(zda se mi) - pral jsem si, aby mi byl vracen pozadovany element - tedy ten na konci xpath cesty za posledním lomítkem. Jenze jsem se v tom ztratil a ted uz si ani nejsem jisty, zda-li rekurze byla dobrym napadem.
Proto jsem se vas chtěl zeptat, zda-li jset to uz resili a jak? Dekuji