Cette question a été posée à de nombreuses reprises, mais après avoir suivi les conseils de la rubrique cette réponse Je ne suis toujours pas à la hauteur.
J'ai une bibliothèque de classes qui est invoquée par une autre application. Cela fonctionne localement sans problème. J'utilise ce qui suit...
SqlServerSpatial140
y msvcr120
sont tous deux dans la corbeille, dans leurs dossiers respectifs.
Avant que les appels spatiaux ne soient invoqués
SqlServerTypes.Utilities.LoadNativeAssemblies(dlls); // dlls == bin directory
SqlProviderServices.SqlServerTypesAssemblyName = typeof(SqlGeography).Assembly.FullName;
App.config
<runtime>
<dependentAssembly>
<assemblyIdentity name="Microsoft.SqlServer.Types" publicKeyToken="89845dcd8080cc91" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-14.0.0.0" newVersion="14.0.0.0" />
</dependentAssembly>
</runtime>
Cependant, lorsqu'il est déployé sur un serveur, j'obtiens un message System.InvalidOperationException
lors de l'appel System.Data.Entity.Spatial.DbGeography.FromText(String wellKnownText)
avec l'erreur
Les types et fonctions spatiales ne sont pas disponibles pour ce fournisseur car l'assembly 'Microsoft.SqlServer.Types' version 10 ou supérieure n'a pas pu être trouvé. System.InvalidOperationException : Les types et fonctions spatiales ne sont pas disponibles pour ce fournisseur car l'assembly 'Microsoft.SqlServer.Types' version 10 ou supérieure n'a pas pu être trouvé.
Qu'est-ce qui m'échappe ?