2014-02-07 5 views
-2

XML 루프와 일부 값이

그대로 모든 다른 사람을 떠나는 "Att1"및 ATT2 "

모든 아래의 XML

을 통해

내가 루프도 원하는 도움을 삭제하시기 바랍니다 삭제

여기가 예제입니다. xml

<?xml version="1.0" encoding="utf-8"?> 
<main> 
    <example Att1="" Att2="" Att3="" Att4="" Att5=""> 
     <name>value</name> 
     <name1>value</name1> 
     <name2>value</name2> 
     <name3>value</name3> 
    </example> 

    <example1 Att1="" Att2="" Att3="" Att4="" Att5=""> 
     <name>value</name> 
     <name1>value</name1> 
     <name2>value</name2> 
     <name3>value</name3> 
    </example1> 

    <example2 Att1="" Att2="" Att3="" Att4="" Att5=""> 
     <name>value</name> 
     <name1>value</name1> 
     <name2>value</name2> 
     <name3>value</name3> 
    </example2> 
</main> 

죄송합니다. 죄송합니다. 죄송합니다. 나는 원래의 것을 게시 할 수 없습니다

+0

실제의 XML을 게시하십시오. 태그는 같은 이름을 가진 두 개의 속성을 가질 수 없습니다 (''). 지금까지 시도한 것을 게시하여 해결할 수 있도록하십시오. –

+0

당신은 Linq-To-Xml을 찾거나,'System.Linq.Xml'을 포함하고 XDocument를 인스턴스화함으로써 그것을 처리해야합니다. 상당히 쉽습니다. – Magus

+0

안녕하세요, 네 L.B XML (변경)에 대해 내가 틀렸어 –

답변

1
var xDoc = XDocument.Load(filename); //XDocument.Parse(xmlstring); 

xDoc.Descendants() 
    .SelectMany(d => d.Attributes()) 
    .Where(a => a.Name == "Att1" || a.Name == "Att2") 
    .ToList() 
    .ForEach(x => x.Remove()); 

var newXml = xDoc.ToString(); //xDoc.Save(filename); 
+0

그것은 훌륭하게 작동합니다 !!! 덕분에 –

+0

그것은 작동합니다. 감사 !!! 어떻게하면 루프를 추가 할 수 있을까요? 제가 제거하고자하는 값을 동적으로 추가하려는 속성을 추가 할 수 있습니까? 나는 텍스트 상자를 추가하거나 루프를 사용하여 속성을 표시하고 내가 필요로하는 것을 선택하는 방법을 생각하고있었습니다. 감사합니다! –