Foros del Web » Programación para mayores de 30 ;) » .NET »

Cómo puedo crear un reporte en un servicio WCF?

Estas en el tema de Cómo puedo crear un reporte en un servicio WCF? en el foro de .NET en Foros del Web. Hola gente, Tengo un particular problema usando Crystal Reports en un proyecto de servicio WCF. (Uso Visual Studio 2010 SP1, CrystalReports 13 for VS y ...
  #1 (permalink)  
Antiguo 12/11/2013, 10:40
 
Fecha de Ingreso: julio-2013
Mensajes: 3
Antigüedad: 10 años, 9 meses
Puntos: 0
Exclamación Cómo puedo crear un reporte en un servicio WCF?

Hola gente,

Tengo un particular problema usando Crystal Reports en un proyecto de servicio WCF. (Uso Visual Studio 2010 SP1, CrystalReports 13 for VS y Framework .NET 4)

Sobre un objeto (rpt) de tipo ReportClass, al usar el metodo SetDataSource
Código:
rpt.SetDataSource(dt)
me tira el siguiente error en tiempo de ejecución:

Información adicional: No se puede cargar el archivo o ensamblado 'file:///C:\Program Files\SAP BusinessObjects\Crystal Reports for .NET Framework 4.0\Common\SAP BusinessObjects Enterprise XI 4.0\win32_x86\dotnet1\crdb_adoplus.dll' ni una de sus dependencias. El sistema no puede encontrar el archivo especificado.

Googlié el mensaje de error y todos dan una única solución, agregar en el archivo de configuración (app.config/web.config) las siguientes líneas:
Código:
<startup useLegacyV2RuntimeActivationPolicy="true">
  <supportedRuntime version="v4.0"/>
</startup>
ó
Código:
<startup useLegacyV2RuntimeActivationPolicy="true">
  <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0"/>
</startup>
Pero sigue dando el mismo error. Así que creé la carpeta dotnet1 en la ubicación mencionada a ver que pasa y arroja el siguiente error:
Información adicional: El ensamblado de modo mixto se ha compilado con la versión 'v2.0.50727' del runtime y no se puede cargar en el runtime 4.0 sin información de configuración adicional.

Por lo visto el Crystal Reports 13 funciona con el Framework .NET 2 y necesita la configuración adicional useLegacyV2RuntimeActivationPolicy en "true" para poder andar. Pero el servicio de alguna manera no toma ésa configuración, la omite o no la lee.
Si yo intento crear los reportes con LA MISMA LÓGICA (incluyendo useLegacyV2RuntimeActivationPolicy="true") pero en una aplicación de consola, windows form o web form funciona perfectamente. El conflicto lo tiene con los servicios WCF.

Alguna idea de como solucionar este problema?

Saludos

Etiquetas: net, reporte, servicio, studio, visual
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 23:10.