Como Crear un App.Config para una Aplicacion .NET Compact Framework

La actual versión del .NET Compact Framework (viene con Visual Studio .NET 2003) no ofrece la capacidad de acceder a un archivo de configuración App.Config como lo hace una aplicación .NET Windows Form.

Si deseas obtener la misma funcionalidad, simplemente carga el archivo de configuración en un XmlDocument y transforma el documento xml en una NameValueCollection. A partir de eso, puedes referenciar la colección AppSettings para recuperar el valor por el nombre de clave.

Revisemos el siguiente ejemplo.

Es importante anotar que necesitarás incluir el archivo App.Config en tu proyecto y configurar las propiedades del archivo para ser considerado Content (contenido).

Esto asegura que tu archivo sea incluido con la distribución.


App.Config de muestra

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
   <appSettings>
      <add key="Item1" value="value of item 1" />
      <add key="Item2" value="value of item 2" />
      <add key="Item3" value="value of item 3" />
   </appSettings>
</configuration>

Codigo de ejemplo (C#)

using System;
using System.Collections.Specialized;
using System.Xml;
using System.IO;

public class ConfigurationSettings
{

public static NameValueCollection AppSettings;

public static void LoadConfig()
{
try
{

string AppPath = Path.GetDirectoryName( Assembly.GetExecutingAssembly().GetName().CodeBase);
string ConfigFile = Path.Combine(AppPath,"App.config");

if(File.Exists(ConfigFile) == false)
{
System.Windows.Forms.MessageBox.Show("Config file does not exist");
Application.Exit();
return;
}

XmlDocument oXml = new XmlDocument();

oXml.Load(ConfigFile);

XmlNodeList oList = oXml.GetElementsByTagName("appSettings");

AppSettings = new NameValueCollection();

foreach(XmlNode oNode in oList)
{
foreach(XmlNode oKey in oNode.ChildNodes)
{
AppSettings.Add(oKey.Attributes["key"].Value, oKey.Attributes["value"].Value);
}
}

System.Windows.Forms.MessageBox.Show(ConfigurationSettings.AppSettings["Item1"]);

}
catch (Exception) { throw; }
}

}

Consulta sobre Optimización de Procedimientos Almacenados

Llegó un correo de un lector: Héctor Hoyos.



Buenas noches; soy una persona muy interesada en conocer como pruebo y optimizo un procedimiento almacenado y de acuerdo con el texto de su blog "Podemos empezar realizando una estadística de la ejecución del procedimiento almacenado, detallando ciclos de CPU utilizados, lecturas, escrituras, tiempo de duración,
observaciones, etc. no tengo la experiencia ni el conocimiento para realizar estas estadisticas, me puede orientar que y como ejecutar estas estadisticas.


Yo vivo en Colombia y me parece muy interesante su blog, del cual estoy aprendiendo bastante.


Cordial saludo,


Héctor A. Hoyos B.


Mi respuesta fué:

Hola Héctor:


En el Analizador de Consultas, en el menú Consulta, marcas la opción Mostrar Estadísticas de Cliente, y cuando ejecutes el procedimiento (en el mismo analizador de consultas), te mostrará las estadisticas de ejecución del procedimiento. Otra es Mostrar plan de ejecución. Ambas te darán estadisticas del procedimiento, que te permitirá optimizarlo.


Saludos,


Carlos
Animo a ustedes lectores a hacer preguntas, la verdad que el tiempo siempre es escaso, pero siempre trato de dar una respuesta. Hasta pronto.