¿Cómo abro la máquina?
-
27-10-2019 - |
Pregunta
La aplicación quiero leer la configuración de las escrituras a la sección de la máquina.
Pero cuando uso el siguiente código:
Configuration myMC = WebConfigurationManager.OpenMachineConfiguration();
Console.WriteLine(myMC.FilePath.ToString());
La ruta devuelta es siempre la máquina .net 4.config:
c:\WINDOWS\Microsoft.NET\Framework\v4.0.30319\Config\machine.config
Editar: mi aplicación usa MEF, por lo que requiere .NET 4, escribir la aplicación desde .NET 2 no es una opción.
Solución
Puede abrirlo como un archivo XML o texto, consulte: http://support.microsoft.com/kb/307548
Puede crear un servicio que se ejecute en .NET 2.0 y llamar a ese servicio desde su aplicación .NET 4.0.
Pero, ¿por qué necesitas hacer esto?
Otros consejos
Resulta que hay una manera de especificar qué máquina.config para abrir con un ConfigurationManager:
ConfigurationFileMap myCFM = new ConfigurationFileMap(fPath);
Configuration myMC = ConfigurationManager.OpenMappedMachineConfiguration(myCFM);
Console.WriteLine(myMC.FilePath.ToString());
donde fpath era el camino hacia el que quería. Lo conseguí cavando en el registro.