在找到所有后代之后添加新的xElement

时间:2015-08-24 14:16:39

标签: search linq-to-xml xelement xattribute

我有一个包含多个不同xElements的xDocument。

我可以通过搜索xAttributes&成功找到特定的xElement。然后使用以下代码添加新的xElement:

xDocument.Descendants("td").LastOrDefault(e => ((string)e.Attribute("ID")) == "3").Add(new XElement("b", "Just a test."));

问题是我希望在所有找到的后代实例之后添加这个新的xElement,而不仅仅是LastOrDefault或FirstOrDefault。

我的xDocument动态创建&事先没有办法知道有多少' td' xElements with' ID' =' 3'会有。

任何帮助将不胜感激。 感谢

根据要求添加代码

<html> .... etc....  
    <body> 
    <table> 
    <tr> 
    <td>Image</td>
    <td>Description</td> 
    <td>Date</td> 
    </tr> 
    <tr> 
    <td ID="1">*.jpg</td>
    <td ID="2">some image</td>
    <td ID="3">01/01/1901</td>  <--CHANGING THIS PART OF CODE--> 
    <--THIS TABLE ROW REPEATS AN UNDETERMINED NUMBER
    OF TIMES RELATING TO THE NUMBER OF FILES CONTAINED IN WHATEVER DIRECTORY IS BEING SEARCHED USING A FOREACH LOOP IN ANOTHER PART OF
    THE CODE--> 
    </tr> 
    </table> 
    </body> 
    </html>

所以我想尝试在ID为3的<td>之间添加标签。 此<b>标记还包含字符串变量,即 new xElement("b", DateTaken) &安培;需要在运行时创建,而不是硬编码,因为它与表行开头的每个加载图像有关。

因此,我尝试将此<b>标记添加到ID为3&amp;的<td>的每个匹配项中。不只是第一个或最后一个。

希望这些额外信息有所帮助。

0 个答案:

没有答案