2009-10-26 80 views
27

Tengo una aplicación web que implementamos en una producción. Tenemos servidores separados para WEB y base de datos. El DB es SQL Server 2008 y está alojado en un servidor completamente diferente y tenemos nuestro IIS instalado en un servidor diferente.No se pudo cargar el archivo o ensamblado 'Microsoft.SqlServer.Types

En mi servidor web, aparece un error de seguimiento. No se pudo cargar el archivo o ensamblado 'Microsoft.SqlServer.Types, versión = 10.0.0.0, Culture = neutral, PublicKeyToken = 89845dcd8080cc91' o uno de sus dependencias

he comprobado el GAC en el servidor web y que faltaba este DLL particular Esto tiene sentido para mí, ya que es un servidor web y no se supone que tenga ensamblados relacionados con SQLServer.

Nuestra aplicación funcionó muy bien en nuestro entorno de desarrollo, prueba y ensayo, ya que nuestro IIS y DB se instalaron en el mismo servidor.

¿Cómo puedo superar este problema en la producción? Puedo, instalando SQL Server 2008 en el servidor web. Pero esto no tiene sentido para mí. Es un servidor web: ¿por qué debería instalar SQL Server 2008 en esa máquina?

+2

SVI- Usted tiene dependencias en los tipos de SQL en la aplicación, por lo que debe tener esas asambleas en cualquier caja a los que se instala la aplicación. Es por eso que debe instalar estos bits SQL en su servidor web. El Feature Pack se proporciona para que pueda instalar ensamblajes SQL compatibles sin instalar el servidor completo. –

+0

Sí. Ahora lo entiendo. Gracias por la información y la explicación. – SVI

Respuesta

14

Microsoft SQL Server 2008 Feature Pack

Breve descripción:

Descargar el Server 2008 Feature Pack de Microsoft SQL, una colección de autónomo instalar paquetes que proporcionan un valor adicional a SQL Server 2008. Específicamente los tipos de datos CLR.

Nota: Actualización enlace paquete de características Ene 2013

+0

Dave, Tengo dificultades para entender por qué debería instalar cualquier componente SQL SERVER relacionado en mi servidor web. – SVI

+3

Porque desea utilizar los tipos espaciales de SQL Server. – Cornelius

+1

Dave, veo de dónde vienes ... ¿Quieres decir que debería instalar Microsoft SQL Server System Tipos de CLR DESCRIPCIÓN: El paquete de tipos de CLR del sistema SQL Server contiene los componentes que implementan los nuevos tipos de geometría, geografía y hierarchyid en SQL Server 2008. Este componente se puede instalar por separado del servidor para permitir que las aplicaciones cliente utilicen estos tipos fuera del servidor. – SVI

15

visor de informes necesita esta clase

Microsoft.ReportViewer.Common.dll 
Microsoft.ReportViewer.ProcessingObjectModel.dll 
Microsoft.ReportViewer.WebForms.dll 
Microsoft.ReportViewer.WinForms.dll 
Microsoft.ReportViewer.DataVisualization.dll 
Microsoft.SqlServer.Types.dll 
+0

Esta es la respuesta correcta – GuidoG

1

pude ignorar este error, simplemente pulsando el botón "Continuar" cuando apareció el error. No pareció afectar el funcionamiento del servidor 2008 R2 una vez que finalizó la instalación. Estoy ejecutando Windows 7 de 64 bits.

0

Por favor, vea este mensaje del foro: https://social.technet.microsoft.com/Forums/sharepoint/en-US/7e673dde-dfca-4b1a-a840-025a2ae9ee58/reportviewer-msi-is-missing-microsoftsqlservertypesdll?forum=sqlreportingservices,

la primera respuesta. De hecho, puede descargar los archivos .dlls del tiempo de ejecución del visor de informes redistribuibles y agregarlos a su proyecto para que se implementen en las máquinas que no los tienen.

y el enlace a la descarga en realidad el tiempo de ejecución para VS 2012: http://www.microsoft.com/EN-US/download/confirmation.aspx?id=35747

PS también puedes descargarlos a través de NuGet sólo la búsqueda de "MICROSOFT Report Viewer 2012 DURACIÓN" y ellos (que es lo que hice.) debería aparecer, la forma más fácil hasta ahora

6

La mejor solución sería instalar el paquete Microsoft.SqlServer.Types NuGet.

PM> Install-Package Microsoft.SqlServer.Types 

Y siga las instrucciones de su archivo Léame.htm

+0

adicionalmente - una vez que el paquete nuget está instalado, puede asegurarse de que la propiedad de referencia dll esté configurada para 'copiar local = true' –

-2

Para mí Cierre la aplicación y vuelva a abrirlo a resolver el problema

Cuestiones relacionadas