8

Uso NHibernate con fluidez.Aplicación de sección de configuración no reconocida Configuración en NHibernate

Tengo un archivo app.config con algunas teclas específicas (applicationSettings y userSettings).

Parece que al nhibernate no le gustan estas teclas. Mientras estas claves existan en el archivo, falla Fluently.Configure() y se genera una excepción con el mensaje Configuración no reconocida applicationSettings.

¿Qué puedo hacer?

Aquí está el fichero de configuración:

<?xml version="1.0"?> 
<configuration> 
    <connectionStrings> 
    <add name="MyDB" connectionString="Data Source=|DataDirectory|\MyDB.sdf" providerName="Microsoft.SqlServerCe.Client.3.5" /> 
</connectionStrings> 
    <startup> 
    <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0"/> 
    </startup> 
    <applicationSettings> 
     <MyApp.Properties.Settings> 
      <setting name="ServerIp" serializeAs="String"> 
       <value>127.0.0.1</value> 
      </setting> 
      <setting name="ServerPort" serializeAs="String"> 
       <value>5678</value> 
      </setting> 
      <setting name="UseSSL" serializeAs="String"> 
       <value>True</value> 
      </setting> 
      <setting name="WsUrl" serializeAs="String"> 
       <value/> 
      </setting> 
     </MyApp.Properties.Settings> 
    </applicationSettings> 
    <userSettings> 
     <MyApp.Properties.Settings> 
      <setting name="User" serializeAs="String"> 
       <value>test</value> 
      </setting> 
      <setting name="Password" serializeAs="String"> 
       <value>test</value> 
      </setting> 
     </MyApp.Properties.Settings> 
    </userSettings> 
</configuration> 

Gracias!

+0

Publique su archivo de configuración completo. Probablemente no haya formateado su archivo de configuración correctamente. –

+0

Hecho. Gracias por su respuesta. – Programatic

Respuesta

19

Su mensaje de error es prácticamente in situ y no tiene nada que ver con NHibernate: la configuración necesita saber qué ConfigSecciones proporcionará, que usted no especificó. Esto no debería suceder, ¿VS creó la aplicación.config para usted?

<?xml version="1.0"?> 
<configuration> 
    <configSections> 
    <sectionGroup name="userSettings" type="System.Configuration.UserSettingsGroup, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"> 
     <section name="MyApp.Properties.Settings" type="System.Configuration.ClientSettingsSection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" allowExeDefinition="MachineToLocalUser" requirePermission="false"/> 
    </sectionGroup> 
    <sectionGroup name="applicationSettings" type="System.Configuration.ApplicationSettingsGroup, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" > 
     <section name="MyApp.Properties.Settings" type="System.Configuration.ClientSettingsSection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" /> 
    </sectionGroup> 
    </configSections> 
    <userSettings> 
    <!--...--> 
    </userSettings> 
    <applicationSettings> 
    <!--...--> 
    </applicationSettings> 
</configuration> 

Si quieren más antecedentes sobre cómo funciona la configuración, read this para empezar.

Cuestiones relacionadas