如何以易于阅读的格式定义一个简单的层次结构,然后在C#中迭代/导航它?
我想我可以定义一组类并获取属性,但我宁愿使用代码较少的格式,例如xml-ish甚至是纯文本 - 例如..
<root>
<level1 name="whatever">
<sublevel1 />
<sublevel2 />
</level1>
<level2 />
<level3 />
</root>
或者是asp.net MVC模型绑定器让我想到的东西
Root.Name=Thing
Root.Type=Object
Root.SubLevel[0].Name=SomeItems
Root.SubLevel[0].Type=Collection
Root.SubLevel[1].Name=OtherThing
Root.SubLevel[1].Type=Object
Root.SubLevel[1].SubLevel[0].Name=OtherItems
Root.SubLevel[1].SubLevel[0].Type=Collection
无论如何,越简越好。我们的想法是遍历层次结构并使用其属性重复各种操作 - 如“名称”,“类型”等。我还希望能够使用索引(在第二个示例中)或者只是能够在导航过程中跟踪我在结构中的位置。除了用类建模之外,怎么办呢?
答案 0 :(得分:1)
XML是显而易见的选择,因为它非常适合层次结构,并且非常支持在C#中读取它(特别是通过System.Xml.Linq.XDocument)。
如果你真的想要另类,不知道为什么,我会建议你看看YAML:http://en.wikipedia.org/wiki/Yaml