2016-12-08 10 views
0

저는 C#의 XML 라이터를 사용하여 프로그래밍 방식으로 요소를 추가하려고합니다. 모든 것이 잘 작동합니다.XMLWrite에 특정 속성을 추가하는 방법이 있습니까?

var xmlWriterSettings = new XmlWriterSettings() 
{ 
    Indent = true, 
    IndentChars = "\t", 
    NewLineOnAttributes = true 
}; 
using (XmlWriter writer = XmlWriter.Create(_pathToOutputXml, xmlWriterSettings)) 
{ 
    writer.WriteStartElement("module_name", "name", realModuleName); 

} 

나는 또한

을 시도 :

<module_name path="pathToModule" name="nameOfModule", executable="moduleExecutale"></module_name> 

내 XMLWriter가이 같은 :

<module_name path="pathToModule"></module_name> 

내가 지금과 같은 구조를 달성하기 위해 노력하고 있어요 : 나는 현재이 있습니다

writer.WriteStartElement("module_name", "name", realModuleName); 
writer.WriteAttributeString("path", path, "executable", executable); 

이며 컴파일되지 않습니다. 이걸 지나서. '파일'에 잘못된 이름 문자가 잘못 있습니다. ':'문자 (16 진수 값)는 이름에 포함될 수 없습니다. 나는 이것이 잘못된 접근이라고 생각하지만 다른 옵션을 보지 못합니다.

이 목표를 달성하기 위해 사용할 수있는 XMLWriter 속성은 무엇입니까?

+0

왜 XMLWriter가'로 제한 :

writer.WriteStartElement("module_name"); writer.WriteAttributeString("name", realModuleName); writer.WriteAttributeString("path", path); writer.WriteAttributeString("executable", executable); 

이이 같은 요소가 발생할 것입니다 : 내가 특정 요소에 속성을 추가하려는 경우 나는 이런 식으로 뭔가를해야 할 것이라고 밝혀 ','XmlDocument' 또는'XDocuemnt'가 아닌가? –

+0

구체적으로 원하는 구조는 무엇입니까? 속성 목록? 빈 줄? 끝 요소 ''? 속성을 분리하는 조작 된','? 또한 주어진 코드는 여러분이 가지고있는 말처럼 아무것도 생성하지 않으므로 혼란이 가중됩니다. –

+0

@LeiYang 저는 XMLWriter에 국한되지 않고, 프로그래밍 방식으로 XML 문서를 만드는 데 사용하고 있습니다. – jshaf

답변

0

나는 그것을 알아 냈다.

<module_name name="Captiva Administrator" path="" executable="test.exe">