Hello, System developing student from Sweden here!
I have a problem with Telerik.OpenAccess.Extensions.35 somehow being referenced in my project so I cannot build it. To make a long story short I think I have managed to analyze it to:
1. A co-worker had troubles running, upgraded his version his library of Telerik.DataAccess.Core from 2014 to 2015.
2. He accidently commit's his upgraded web.config and .csproj files to TFS.
3. I 'Get latest changes' and receieve these files, I cannot build project, the DLL needs upgraded versions of dependencies.
4. We manually try to override conflicting files and analyze each individually to map the path and versions. Doesn't help.
5. We try to 'Upgrade references' to no prevail.
6. I try to put each of the Telerik dependencies in a libraries map with correct versions to every file and point to these from the csproj file, doesn't help.
7. I then try to upgrade my Telerik.DataAccess.Core from both nuget and via tooltip from you saying there is a new version available. Doesn't help.
8. 'Upgrade references' again, only shifts mapping from libraries to C:\Program Files (x86)\ folder.
9. I try on a different computer with a clean installation of both Visual Studio and Telerik and gets the latest version of project, doesn't help. It doesn't fail to build but when I try to run it, the first occurence of code trying to use any DataAccess i get a System.TypeInitializationException and cannot work around this even if I follow steps from a thread on your forum.
10. I take the builded dll file from the second computer unto the first computer, since it should have been built with correct versions of Telerik dependencies and I should have all those properly referenced on the first computer, right? Nope.
11. I get prompted from my first computer that it cannot load assembly Telerik.OpenAccess.Extensions.35, Version=2014.3.1209.1 since the one I got in the libraries are of a newer version. Nowhere in csproj, web.config or anywhere else is this version referenced. Everything everywhere points to the newer 2015.1.225.1 versions. I try to obliege(spelling?) and exchange this version of the file to a the one it asks for, then upon build I get prompted "Signature of the body and declaration in a method implementation do not match. Type: 'XXXX.OADomainModel'". <-- XXXX being my class name
Now I'm a very patience man but this makes me crazy. I've tried everything for the last couple of days. Nothing makes it work. Somehow there is a ghost referencing to old versions and when I give it what it asks it, it changes the conditions. My co-worker can build just fine without any incidents and I made a IDENTICAL copy of his project on a new computer, with a fresh installment of both Telerik and Visual Studio.
So what is the error here? Including both types of error messages, XXXXX is project dll (class name):
When I have newer versions and try to build:
Warning 1 Unable to load assembly 'XXXX, Version=1.0.5577.25190, Culture=neutral, PublicKeyToken=null' : Could not load file or assembly 'Telerik.OpenAccess.35.Extensions, Version=2014.3.1209.1, Culture=neutral, PublicKeyToken=7ce17eeaf1d59342' or one of its dependencies. General Exception (Exception from HRESULT: 0x80131500)
ExceptionString:
System.SystemException: Unable to load assembly 'XXXX, Version=1.0.5577.25190, Culture=neutral, PublicKeyToken=null' : Could not load file or assembly 'Telerik.OpenAccess.35.Extensions, Version=2014.3.1209.1, Culture=neutral, PublicKeyToken=7ce17eeaf1d59342' or one of its dependencies. General Exception (Exception from HRESULT: 0x80131500) ---> System.Reflection.ReflectionTypeLoadException: Unable to load one or more of the requested types. Retrieve the LoaderExceptions property for more information.
at System.Reflection.RuntimeModule.GetTypes(RuntimeModule module)
at System.Reflection.RuntimeModule.GetTypes()
at System.Reflection.Assembly.GetTypes()
at Telerik.OpenAccess.Metadata.MetadataAttributesReader.PrepareMetaModelTypes(Assembly assembly)
--- End of inner exception stack trace ---
at Telerik.OpenAccess.Metadata.MetadataAttributesReader.PrepareMetaModelTypes(Assembly assembly)
at Telerik.OpenAccess.Metadata.MetadataAttributesReader.ReadMetaModel(Assembly assembly)
at Telerik.OpenAccess.Metadata.AttributesMetadataSource.<>c__DisplayClass1.<FromAssembly>b__0()
at Telerik.OpenAccess.Metadata.AttributesMetadataSource.CreateModel()
at Telerik.OpenAccess.Metadata.MetadataSource.GetModelCore(MetadataContainer old)
at Telerik.OpenAccess.Sdk.Enhancer.Enhancer.CrossDomainRunImpl(AssemblyLoader assemblyLoader)
at Telerik.OpenAccess.Sdk.Enhancer.EnhancerBase.CrossDomainRun() XXXX.dll XXXX.Web
When I put a newer version on requested path:
Error 2 Unable to load assembly 'XXXX, Version=1.0.5578.15058, Culture=neutral, PublicKeyToken=null' : Signature of the body and declaration in a method implementation do not match. Type: 'XXXX.OADomainModel'. Assembly: 'XXXX, Version=1.0.5578.15058, Culture=neutral, PublicKeyToken=null'.
ExceptionString:
System.SystemException: Unable to load assembly 'XXXX, Version=1.0.5578.15058, Culture=neutral, PublicKeyToken=null' : Signature of the body and declaration in a method implementation do not match. Type: 'XXXX.OADomainModel'. Assembly: 'XXXX, Version=1.0.5578.15058, Culture=neutral, PublicKeyToken=null'. ---> System.Reflection.ReflectionTypeLoadException: Unable to load one or more of the requested types. Retrieve the LoaderExceptions property for more information.
at System.Reflection.RuntimeModule.GetTypes(RuntimeModule module)
at System.Reflection.RuntimeModule.GetTypes()
at System.Reflection.Assembly.GetTypes()
at Telerik.OpenAccess.Metadata.MetadataAttributesReader.PrepareMetaModelTypes(Assembly assembly)
--- End of inner exception stack trace ---
at Telerik.OpenAccess.Metadata.MetadataAttributesReader.PrepareMetaModelTypes(Assembly assembly)
at Telerik.OpenAccess.Metadata.MetadataAttributesReader.ReadMetaModel(Assembly assembly)
at Telerik.OpenAccess.Metadata.AttributesMetadataSource.<>c__DisplayClass1.<FromAssembly>b__0()
at Telerik.OpenAccess.Metadata.AttributesMetadataSource.CreateModel()
at Telerik.OpenAccess.Metadata.MetadataSource.GetModelCore(MetadataContainer old)
at Telerik.OpenAccess.Sdk.Enhancer.Enhancer.CrossDomainRunImpl(AssemblyLoader assemblyLoader)
at Telerik.OpenAccess.Sdk.Enhancer.EnhancerBase.CrossDomainRun() XXXX.dll XXXX.Web