.net - whatwg - w3c html standards
Custom app.config Controlador de sección de configuración (3)
Además, si se encuentra creando secciones de configuración con frecuencia, está el Diseñador de Sección de Configuración , un diseñador de Lenguaje Específico de Dominio gráfico para diseñar secciones de configuración.
¿Cuál es la forma correcta de recoger la lista de "páginas" a través de una clase que hereda de System.Configuration.Section si utilicé un app.config como este?
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<configSections>
<section name="XrbSettings" type="Xrb.UI.XrbSettings,Xrb.UI" />
</configSections>
<XrbSettings>
<pages>
<add title="Google" url="http://www.google.com" />
<add title="Yahoo" url="http://www.yahoo.com" />
</pages>
</XrbSettings>
</configuration>
Primero agrega una propiedad en la clase que extiende la Sección:
[ConfigurationProperty("pages", IsDefaultCollection = false)]
[ConfigurationCollection(typeof(PageCollection), AddItemName = "add")]
public PageCollection Pages {
get {
return (PageCollection) this["pages"];
}
}
Entonces necesitas hacer una clase PageCollection. Todos los ejemplos que he visto son bastante idénticos, así que simplemente copie este y cambie el nombre de "NamedService" por "Página".
Finalmente agregue una clase que extienda ObjectConfigurationElement:
public class PageElement : ObjectConfigurationElement {
[ConfigurationProperty("title", IsRequired = true)]
public string Title {
get {
return (string) this["title"];
}
set {
this["title"] = value;
}
}
[ConfigurationProperty("url", IsRequired = true)]
public string Url {
get {
return (string) this["url"];
}
set {
this["url"] = value;
}
}
}
Aquí hay algunos archivos de una implementación de ejemplo:
También debe consultar la serie de tres partes de Jon Rista sobre la configuración de .NET 2.0 en CodeProject.
- Desentrañando los misterios de la configuración de .NET 2.0
- Descifrando los misterios de la configuración de .NET 2.0
- Rompiendo los misterios de la configuración de .NET 2.0
Muy recomendado, bien escrito y extremadamente útil.