Se produce la infracción de acceso cuando se utiliza un controlador de sección de configuración personalizado en una aplicación ASP.NET que está bajo carga

IMPORTANTE: Este artículo ha sido traducido por un software de traducción automática de Microsoft (http://support.microsoft.com/gp/mtdetails) en lugar de un traductor humano. Microsoft le ofrece artículos traducidos por un traductor humano y artículos traducidos automáticamente para que tenga acceso en su propio idioma a todos los artículos de nuestra base de conocimientos (Knowledge Base). Sin embargo, los artículos traducidos automáticamente pueden contener errores en el vocabulario, la sintaxis o la gramática, como los que un extranjero podría cometer al hablar el idioma. Microsoft no se hace responsable de cualquier imprecisión, error o daño ocasionado por una mala traducción del contenido o como consecuencia de su utilización por nuestros clientes. Microsoft suele actualizar el software de traducción frecuentemente.

307513
Este artículo se ha archivado. Se ofrece "tal cual" y no se volverá a actualizar.
Este artículo hace referencia a los siguientes espacios de nombres de la Biblioteca de clases de Microsoft .NET Framework:
  • System.Configuration
Síntomas
Si una aplicación ASP.NET utiliza un controlador de sección de configuración personalizado, puede producirse una excepción de oportunidad primera infracción de acceso de tipo en el aspnet_wp.exe proceso (o proceso w3wp.exe, foran aplicación que se ejecuta en servicios de Microsoft Internet Information Server [IIS] 6.0) cuando la aplicación de ASP.NET se está bajo presión.
Causa
Este problema puede producirse cuando varios subprocesos se el mismo objeto de configuración simultáneamente si la implementación de la interfaz IConfigurationSectionHandler no es seguro para subprocesos y sin estado o si el objeto que devuelve el método Create no es seguro para subprocesos e inmutable.
Solución
Cuando crea un controlador de sección de configuración de ASP.NET personalizado, utilice las directrices siguientes al implementar la interfaz IConfigurationSectionHandler :
  • Las instancias de la clase que implementan la interfaz IConfigurationSectionHandler deben ser seguro para subprocesos y sin estado.
  • El objeto que devuelve el método IConfigurationSectionHandler.Create debe ser seguro para subprocesos e inmutable.
  • No modifique el argumento primario para el método IConfigurationSectionHandler.Create .
Estado
Este comportamiento es por diseño.
Más información
Las instancias de IConfigurationSectionHandler deben ser seguro para subprocesos y sin estado. Debe poder llamar al método IConfigurationSectionHandler.Create desde varios subprocesos simultáneamente.

Además, el objeto de configuración que genera IConfigurationSectionHandler.Create debe ser seguro para subprocesos e inmutable. Porque el sistema de configuración almacena en caché los objetos de configuración, es importante que no modifique el argumento "primario" a IConfigurationSectionHandler.Create . Por ejemplo, si el valor devuelto de IConfigurationSectionHandler.Create es sólo una pequeña modificación del "primario", debe modificar un clon del "primario," no el original.
Referencias
Para obtener más información acerca de ASP.NET configuración, haga clic en los números de artículo siguientes para verlos en Microsoft Knowledge Base:
307626Introducción a la configuración de ASP.NET
309045Cómo crear un controlador de sección de configuración de ASP.NET personalizado en Visual C# .NET
AV kbreadme

Advertencia: este artículo se ha traducido automáticamente

Propiedades

Id. de artículo: 307513 - Última revisión: 02/24/2014 06:07:17 - Revisión: 3.3

  • Microsoft ASP.NET 1.1
  • Microsoft ASP.NET 1.0
  • Microsoft .NET Framework 1.1
  • kbnosurvey kbarchive kbmt kbconfig kbhttphandlers kbhttpruntime kbprb kbreadme KB307513 KbMtes
Comentarios