【发布时间】:2015-08-03 00:30:11
【问题描述】:
我的app.config 有这些自定义部分:
<Animals>
<add Type="Elephant" Name="Dumbo" Age="22" />
<add Type="Giraffe" Name="Shorty" Age="5" />
<add Type="Giraffe" Name="Mike" Age="7" />
<add Type="Lion" Name="Shaggy" Age="2" />
</Animals>
<Zoos>
<add Name="New York Zoo" Animals="Dumbo,Shorty" />
<add Name="Paris Zoo" Animals="Mike,Shaggy" />
</Zoos>
我有这些标准类:Animal、AnimalCollection、Zoo、ZooCollection。
Zoo 完全符合预期,如下所示:
public class Zoo : ConfigurationElement {
[ConfigurationProperty("Name", IsRequired=true)]
public string Name { get { return base["Name"] as string; } }
// I don't want this:
[ConfigurationProperty("Animals", IsRequired=true)]
public string Animals { get { return base["Animals"] as string; } }
// I want something like this:
/*
[ConfigurationProperty("Animals", IsRequired=true)]
public IEnumerable<Animal> Animals { get { return ...?
*/
}
所以Zoo.Animals 是Animal 实例名称的CSV 字符串。但我想要的是IEnumerable<Animal> 属性。
我该怎么做?
【问题讨论】:
标签: c# configuration app-config