Cómo puedo crear un reporte en un servicio WCF?
Publicado por pepx (1 intervención) el 12/11/2013 20:09:10
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
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:
ó
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
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
1
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:
1
2
3
<startup useLegacyV2RuntimeActivationPolicy="true">
<supportedRuntime version="v4.0"/>
</startup>
1
2
3
<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
Valora esta pregunta


0