Sección de configuración no reconocida applicationSettings en NHibernate

Estoy usando NHibernate con fluidez.

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

Parece que al nhibernate no le gustan estas llaves. Siempre que estas claves existan en el archivo, Fluently.Configure() falla y se genera una excepción con el mensaje ApplicationSettings de la sección de configuración no reconocida.

¿Qué puedo hacer?

Aquí está el archivo 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!

preguntado el 03 de mayo de 12 a las 22:05

Publique su archivo de configuración completo. Probablemente no formateó correctamente su archivo de configuración. -

1 Respuestas

Su mensaje de error es bastante instantáneo y no tiene nada que ver con NHibernate: la configuración necesita saber qué ConfigSections proporcionará, que 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 desea obtener más información sobre cómo funciona la configuración, leer este para comenzar.

contestado el 08 de mayo de 12 a las 09:05

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.