Impossible de charger les composants natifs de SQL Server Compact
J'ai installé SQL Server Compact Edition 4.0 sur Win7 x64 et il fonctionne à la fois pour Asp.Net et des Applications de Bureau. Ce PC aussi avoir installé Visual Studio 2010 SP1. Mais mon Server 2008 R2 produit l'erreur suivante pour Asp.Net applications, bien qu'il puisse exécuter des Applications de Bureau:
Unable to load the native components of SQL Server Compact corresponding to the
ADO.NET provider of version 8482. Install the correct version of SQL Server
Compact. Refer to KB article 974247 for more details.
J'ai essayé les deux, avec un SqlDataSource et SqlCeConnection. Même erreur. Mon web.la config est comme ci-dessous:
<?xml version="1.0"?>
<configuration>
<connectionStrings>
<add name="SQLCE" connectionString="Data Source=|DataDirectory|\a.sdf"
providerName="System.Data.SqlServerCe.4.0" />
</connectionStrings>
<system.web>
<compilation debug="true" targetFramework="4.0">
<assemblies>
<add assembly="System.Data.SqlServerCe, Version=4.0.0.0,
Culture=neutral, PublicKeyToken=89845dcd8080cc91"/>
</assemblies>
</compilation>
</system.web>
</configuration>
Aussi essayé de copier dll suggérée icimais aucun effet.
source d'informationauteur x-freestyler
Vous devez vous connecter pour publier un commentaire.
Finalement obtenu SQL Server Compact Edition 4.0 travail sous IIS 7.5. Le problème était le problème d'autorisation. Actuel Pool d'Applications de l'identité IWAM_plesk(par défaut) n'ont pas accès à SQL Server Compact 4.0 dossiers:
C:\Program Files\Microsoft SQL Server Compact Edition\v4.0
C:\Program Files (x86)\Microsoft SQL Server Compact Edition\v4.0
Je viens accordée Lire & Exécuter et afficher le Contenu du Dossier des autorisations et maintenant il fonctionne comme un charme.
Il y a deux façons de déployer SQL Server CE 4.0 en ASP.net.
Moyen d'une fiducie ou
privé déploiements.
Votre fichier de configuration utilise la version 4.0.0.0 -
cela nécessite un niveau de Confiance Moyen, et requiert l'Application de la Piscine de l'utilisateur ayant l'autorisation d'accéder à SQL Server Compact COM dll dans
C:\Program Files\Microsoft SQL Server Compact Edition
.Où un niveau de confiance moyen échoue, vous pouvez essayer le déploiement privé. C'est ma préférence, et il y a moins de chance pour que quelque chose va mal avec votre système à l'avenir.
Si vous privé déployer SQL Server CE Dll, par la copie de tous les fichiers dans
v4.0\Private
àbin\
assurez-vous que votre site Web.config déclarer une dépendance sur la version 4.0.0.1. Cette version n'est pas déployé dans le GAC et cela permettra d'assurer que votre copie privée est chargée.Vous aurez également besoin d'un changement correspondant dans les DbProvider section dans le Web.config
La Base de Connaissances Microsoft ici http://support.microsoft.com/kb/974247/en-us dit ceci:
J'ai découvert un problème indépendant qui serait l'origine de ce message d'erreur, donc je poste ici un lien pour tous ceux qui sont arrivés ici à partir de Google. Cela a mangé environ trois ou quatre heures, la nuit dernière, et j'ai finalement dû marcher à travers la décompilé SqlServerCe binaires, donc j'espère que cela va vous aider à: Certains symboles dans le chemin de l'application empêcher SQL Server Compact de chargement.
Ne vous serveur une version bêta de SQL CE 4.0 est installé? Cochez la case " Ajouter/Supprimer des Programmes pour des informations de version.
J'ai juste mis à niveau à partir de SQL CE de 3,5 à 4,0, par le téléchargement d'une nouvelle version de Microsoft.
Après avoir fait cela, j'ai reçu le message d'erreur qui m'a amené ici.
Pour moi la solution a été d'installer SQL CE 4.0 pour EntityFramework ainsi, en utilisant le gestionnaire de package NuGet. Si seulement installer les fichiers binaires à partir du site web ne pas faire l'affaire pour moi!
J'ai eu le même message d'erreur "Impossible de charger les composants natifs de SQL Server Compact"
J'ai utilisé le Try Catch intégré des objets et résoudre le problème. Le fichier sdf ce que j'ai essayé d'ouvrir a un mot de passe.