visual studio asp.net-mvc azure azure-sql-database

asp.net mvc - studio - SQL Azure+Obteniendo un error ''Ya hay un DataReader abierto asociado con este Comando...'', incluso después de configurar ''MultipleActiveResultSets=True''



visual studio connect to sql server azure (6)

Estamos enfrentando algunos problemas con la versión implementada de nuestra aplicación en la nube.

Nuestra aplicación es un proyecto ASP.NET MVC 3 con ADO .NET Entity Framework.

De acuerdo con los blogs de msdn, necesitamos agregar el parámetro ''MultipleActiveResultSets = True'' (para Entity Framework con SQL Azure) en nuestra cadena de conexión de base de datos que hemos hecho correctamente.

Obtenemos la siguiente excepción al ejecutar una consulta de base de datos desde nuestra aplicación: '''' Ya hay un DataReader abierto asociado con este comando que debe cerrarse primero. '''', Que creo que está muy relacionado con la propiedad ''MultipleActiveResultSets = True''.

La aplicación funciona bien en el entorno local con nuestra base de datos desplegada localmente, así como con la base de datos SQL Azure (en el entorno local).

Pero cuando desplegamos nuestra aplicación de nube obtenemos el error mencionado anteriormente. Parece que la propiedad ''MultipleActiveResultSets = True'' no se lee de la cadena de conexión.

La cadena de conexión que estoy usando es la siguiente:

<connectionStrings> <add name="#DBInstanceName#" connectionString="Data Source=tcp:#server#.database.windows.net,1433;Initial Catalog=#DBName#;User ID=”UserName#@#server#;Password=”#password#”;MultipleActiveResultSets=True" providerName="System.Data.SqlClient"/> </connectionStrings>

Puedo conectarme a la base de datos de SQL Azure utilizando la cadena de conexión anterior desde la aplicación implementada localmente sin excepciones. Pero la misma aplicación cuando se implementa en la nube utilizando la misma cadena de conexión me da el error mencionado anteriormente.

¿Puedes ayudarnos a arreglar lo mismo?


Acabo de tener el mismo problema. He intentado configurar "MultipleActiveResultSets = True" en la conexión Web.config - sin resultados. Finalmente resolví el problema editando manualmente la cadena de conexión directamente en Azure Dashboard para el sitio web. En la pestaña "Configurar", hay una configuración de "Cadenas de conexión" en la que debe agregar manualmente "MultipleActiveResultSets = True;" cuerda. Después de hacer eso, MARS trabajó finalmente.


Alternativamente, puede agregar el "MultipleActiveResultSets = true" a su cadena de conexión y actualizar el destino web.config cuando esté utilizando la función Publicar en Visual Studio. Asegúrese de seleccionar "Usar esta cadena de conexión en tiempo de ejecución (actualizar destino web.config)".


Estamos en el nuevo portal de Azure y también tuvimos este problema. MARS trabajó en todos los entornos de desarrollo local, pero arrojó la misma desagradable excepción en Azure. Verificamos que la cadena de conexión en el archivo físico web.config implementado en Azure contenía MultipleActiveResultSets=true; pero no pareció ser honrado por la aplicación. Finalmente, lo que funcionó fue ir a la instancia del servicio de aplicaciones> configuraciones> conexiones de datos y eliminar la conexión de datos del mismo nombre que la que está en cuestión en el web.config. Mi suposición es que la que Azure almacena supera a la de la web.config desplegada.



Tienes que establecer multipleresultsets = true en connectionsstring y reiniciar.

Respuesta eliminada

Editar: ¡Esto es debatido! Mira el comentario debajo ... No he tenido tiempo de investigar ...

Creo que ya está encendido.

No pude encontrar una fuente directa, pero Faisal Mohamood (Administrador de programas, Entity Framework) afirma lo siguiente en 2010: "No hace falta decir que nos aseguraremos de que MARS se active automáticamente para las aplicaciones basadas en SQL Azure cuando lleguemos para lanzar la próxima actualización del producto ". Lo encontré aquí: http://blogs.msdn.com/b/adonet/archive/2010/06/09/remember-to-re-enable-mars-in-your-sql-azure-based-ef-apps.aspx


tengo el mismo problema, pero resolví MultipleActiveResultSets = True en la cadena de conexión desde el asistente de publicación, como irium