J'utilise Visual Studio .NET 4.6 et Robomongo n'a pas de problème de connexion à ma base de données
Mes importations pour MongoDB
using MongoDB.Driver;
using MongoDB.Driver.Builders;
using MongoDB.Bson;
Le code qui s'exécute:
MongoClient client = new MongoClient("mongodb://localhost");
MongoServer server = client.GetServer();
MongoDatabase mongoDatabase = server.GetDatabase("GameCollection");
Le message d'erreur complet:
Une exception non gérée du type 'System.IO.FileNotFoundException' s'est produite dans mscorlib.dll
Informations complémentaires: Impossible de charger le fichier ou l'assembly 'System.Runtime.InteropServices.RuntimeInformation, Version = 4.0.0.0, Culture = neutre, PublicKeyToken = b03f5f7f11d50a3a 'ou l'un de ses dépendances. Le système ne peut pas trouver le fichier spécifié.
Installez le paquet manquant. En utilisant Package-Installer, lancez la commande suivante: Package d'installation System.Runtime.InteropServices.RuntimeInformation
Dans mon cas, System.Runtime.InteropServices.RuntimeInformation était déjà installé sur mon ordinateur, mais il ne cessait de me donner la même erreur. En se plaignant que la version 4.0.0.0 n’ait pas été trouvée, ou si je mettais à jour le fichier app.config en 4.3, il se plaignait du fait que la version 4.3.0.0 était manquante.
Cependant, après la désinstallation et la réinstallation de plusieurs paquets, il a commencé à fonctionner et, même si la version 4.3 de System.Runtime.InteropServices.RuntimeInformation était installée, le fichier app.config devait être 4.0.1.0
<dependentAssembly>
<assemblyIdentity name="System.Runtime.InteropServices.RuntimeInformation" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-4.0.1.0" newVersion="4.0.1.0" />
</dependentAssembly>
Je ne sais pas pourquoi, mais ça marche finalement pour moi.
J'ai eu le même problème ici. Le correctif est assez simple: éditez le fichier de configuration et sur le noeud "dependAssembly" où l'attribut name est "System.Runtime.InteropServices.RuntimeInformation", supprimez simplement l'attribut publicKeyToken.
Bonne chance
Après de nombreuses expériences, il semble que web.config nécessite les éléments suivants pour fonctionner:
<dependentAssembly>
<assemblyIdentity name="System.Runtime" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-4.1.2.0" newVersion="4.1.2.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Runtime.InteropServices.RuntimeInformation" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-4.0.2.0" newVersion="4.0.2.0" />
</dependentAssembly>
Quelles que soient les redirections proposées par NuGet, elles étaient incorrectes. Ce n'est peut-être pas un problème MongoDB en lui-même, peut-être un problème avec les packages/timbres de version de Microsoft Nuget.
Dans mon cas, le paquet était déjà installé. Cependant, les versions du fichier web.config
ne correspondaient pas. Une réinstallation du package a résolu le problème. Ouvrez votre console du gestionnaire de packages et tapez,
Update-Package System.Runtime.InteropServices.RuntimeInformation -Reinstall
J'ai eu le même problème ici. Il a fallu quelques minutes pour découvrir que mon problème était le fait que j'avais mis à jour le paquet de nuget "System.Runtime.InteropServices.RuntimeInformation", et il semble que la référence de pilote de MongoDb csharp ait SpecificVersion = true.
Supprimez tous les packages de nuget et réinstallez-le, ou rétrogradez-le simplement dans la version où il est installé en tant que dépendance de pilote MongoDb.
Bonne chance!
Cela semble dingue, mais ... j'ai eu ce problème dans Windows Server 2012 R2.
Seules les dernières mises à jour d'installation ont été utiles ... ". Il s'agissait de" Sécurité et cumul de la qualité 2018-12 pour .NET pour Windows ... "(KB4471989).