I have an internal report on my web application which when I browse to it locally displays as expected. I am using a rdlc
and xsd
with a standard apsx
web page to render the report.
I have now deployed to my staging server and when I try to browse to the page which displays the report I am getting:
An unexpected error occurred in Report Processing.
Could not load file or assembly 'Microsoft.SqlServer.Types, Version=11.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040)
Locally, I have added a Reference to Microsoft.SqlServer.Types
by browsing to:
C:\Windows\assembly\GAC_MSIL\Microsoft.SqlServer.Types\11.0.0.0__89845dcd8080cc91
And I have set it to Copy Local
and can see the .dll
in the bin folder on the staging server, however I'm still getting the error message.
Out of interest I copied the .dll
from my local machine, and ftp'd it to the staging server and into the bin folder. It then worked, temporarily until I did another commit, which wiped the bin folder and the error returned.
Its like the version of Microsoft.SqlServer.Types
is out of date on the staging server's OS perhaps?
What's going on here?
Same issue for me, however the problem was that the binding redirects in the app.config had not been updated to the new version. Usually updating the nuget package does it automatically, but this nuget package was in a referenced project. Simple fix:
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<appSettings />
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5.2" />
</startup>
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="Microsoft.SqlServer.Types" publicKeyToken="89845dcd8080cc91" culture="neutral" />
<!-- <bindingRedirect oldVersion="0.0.0.0-11.0.0.0" newVersion="11.0.0.0" /> -->
<bindingRedirect oldVersion="0.0.0.0-14.0.0.0" newVersion="14.0.0.0" />
</dependentAssembly>
</assemblyBinding>
</runtime>
</configuration>
It's probably looking for one of its dependencies
if you're sure the dll is in the bin folder.
Instead of referencing from the GAC have you tried removing the reference and adding the following NuGet package ?
https://www.nuget.org/packages/Microsoft.SqlServer.Types/
Experienced the same issue, that has occured after upgrading of Visual Studio and Sql Server instances.
Problem has gone after reinstallation of SQLSysClrtypes.msi and ReportViewer.msi packages, that can be downloaded here
Hope it could help someone.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With