C# 按for循环中的索引号访问xml元素

C# 按for循环中的索引号访问xml元素,c#,xml,C#,Xml,我如何循环遍历每个元素,以避免重复元素名称,从而可以通过索引号进行访问 我有foreach循环来获取每个属性值,但在循环中我重复了很多次。 在foreachloop中,我为循环添加了一个元素,并在找到元素总数(totalAttItem)后添加了该元素。我想使用它通过索引访问每个元素 我试过了,但没有成功 string lienName = lien.Element[i].Element("name").Value; 代码 var doc = XDocument.Load(path); fore

我如何循环遍历每个元素,以避免重复元素名称,从而可以通过索引号进行访问

我有foreach循环来获取每个属性值,但在循环中我重复了很多次。 在foreachloop中,我为循环添加了一个元素,并在找到元素总数(totalAttItem)后添加了该元素。我想使用它通过索引访问每个元素

我试过了,但没有成功

string lienName = lien.Element[i].Element("name").Value;
代码

var doc = XDocument.Load(path);
foreach (var lien in doc.Descendants("LIEN_CLAIMANT"))
{
    int totalAttItem = lien.Elements().Count();

    for (int i = 0; i < totalAttItem; i++)
    {
        string lienName = lien.Element("item0").Element("name").Value;
        string lienRole = lien.Element("item0").Element("role").Value;
        string lienAddress = lien.Element("item0").Element("address").Value;
        string lienStreet = lien.Element("item0").Element("street").Value;
        string lienCity = lien.Element("item0").Element("city").Value;  

        string lienName1 = lien.Element("item1").Element("name").Value;
        string lienRole1 = lien.Element("item1").Element("role").Value;
        string lienAddress1 = lien.Element("item1").Element("address").Value;
        string lienStreet = lien.Element("item1").Element("street").Value;
        string lienCity1 = lien.Element("item1").Element("city").Value;   

        string lienName2 = lien.Element("item2").Element("name").Value;
        string lienRole2 = lien.Element("item2").Element("role").Value;
        string lienAddress2 = lien.Element("item2").Element("address").Value;
        string lienStreet2 = lien.Element("item2").Element("street").Value;
        string lienCity2 = lien.Element("item2").Element("city").Value;                                             
    }
}
var doc=XDocument.Load(路径);
foreach(文件子代中的var留置权(“留置权申请人”))
{
int totalAttItem=lien.Elements().Count();
for(int i=0;i
试试这个:

string lienName = lien.Elements().ElementAt(i).Element("name").Value;