2011-01-17 3 views
0

내 프로그램에서 수행 할 수있는 작업 목록을 xml 형식으로 표현해야합니다. 문제는 일부 동작에는 추가 요소가 필요하고 다른 동작에는 필요가 없다는 것입니다. 예를 들어 내 프로그램이 파일에 대한 작업을 수행해야하는 경우 : 관심이있는 유일한 것을 삭제하면 경로가되며, 프로그램이 복사를 수행하면 ... 다시 경로가 필요하지만 대상 경로도 필요합니다. 구조화 된 XML 파일을 작성 하시겠습니까?수행 할 작업의 유형에 따라 요소가있는 XML 파일 작성

답변

1

다음과 같은 것이 있습니까?

<actions> 
    <action name="FileCopy"> 
    <params> 
     <param name="SourcePath" value="c:\source.txt"/> 
     <param name="DestPath" value="c:\dest.txt"/> 
    </params> 
    </action> 
    <action name="FileDelete"> 
    <params> 
     <param name="DeletePath" value="c:\source.txt"/> 
    </params> 
    </action> 
    <action name="ReloadCache"/> 
    <action name="Alert"> 
    <params> 
    <param name="Message" value="Done!"/> 
    </params> 
    </action> 
</actions> 

당신은 물론 params 수준을 제거하고 action 태그 바로 아래에 param 태그를 넣을 수 있습니다, 그러나 제안 된 구조는 파괴하지 않고 (예를 들어, 검증 콜백을)를 action 태그에서 노드의 다른 유형을 추가 할 수 있습니다 너무 많은 것.

+0

예, 정확하게 생각하고 있습니다. thanks – Hiro

+0

위의 예는 그대로 작동하지만 나중에 완전히 유연하지 않을 수도 있습니다. 논쟁의 여지가있는 주제이지만, 많은 사람들은 가치 데이터보다는 요소의 내용에 관한 메타 데이터를 포함하는 것으로 속성을 제한하는 것이 좋습니다. 예 : ' 75'자세한 내용은이 게시물을 참조하십시오. : http://stackoverflow.com/questions/521454/how-should-you-structure-your-xml-file –

+0

@James : 적어도 표준 .NET의'appSettings' conf 섹션이 구조화되어 있습니다 (''). –

관련 문제