"L'invocation du constructeur sur le type' TestWPF.MainWindow ' qui correspond aux contraintes de liaison spécifiées a lancé une exception."- comment résoudre ce problème?
Je travaille avec WPF. Quand j'essaie de déclarer SQLiteConnection
dans le code, le problème se pose -
The invocation of the constructor on type 'TestWPF.MainWindow' that matches the specified binding constraints threw an exception.
InnerException: Make sure that the file is a valid .NET Framework assembly.
Quelqu'un peut-il me dire, comment le réparer?
15 réponses
Dans mon cas spécifique, j'obtenais cela parce que j'avais quelques-uns de mes assemblys de référencement incompatibles entre x64 et x86. Apparemment, je reliais à quelque chose qui devait être chargé par l'exécution.
Je mentionne ceci ici comme un rappel pour vérifier vos configurations de construction si vous avez regardé partout ailleurs!
Si vous cliquez sur Afficher les Détails... à partir de la fenêtre d'exception, vous pouvez regarder InnerException. Développez ce nœud et vous verrez exactement ce qui a mal tourné.
J'ai résolu le problème en ajoutant le contenu ci-dessous dans app.config
,
<configuration> <startup useLegacyV2RuntimeActivationPolicy="true" /> </configuration>
J'ai trouvé cela via un ajout communautaire par l'utilisateur FCAA ci-dessous l'article " Dépannage des Exceptions: System. IO. FileLoadException " sur MSDN.
J'ai eu la même erreur et, après avoir perdu environ 2 heures avec elle, j'ai constaté que c'est mon service SQL Server qui ne fonctionne pas. Je ne sais pas si cela peut jamais aider quelqu'un, mais cela a résolu mon problème de démarrer le service.
L'exeption mentionnée est assez générique et vous pouvez la recevoir, par exemple, lorsque le code échoue dans le constructeur. J'ai eu un cas d'exception IO qui est apparu avec un texte similaire. Entrer dans le code peut fournir des conseils pour résoudre ce problème qui peut ne pas être évident autrement.
J'ai rencontré ce problème et il a été causé parce que mon application de démarrage a été construite comme N'importe quel CPU mais je référencais un projet qui a été construit en tant que x64. Définir le démarrage pour construire x64 a résolu le problème.
Je l'ai eu quand j'ai spécifié le FrameworkPropertyMetadata
de DependencyProperty
, avec une valeur par défaut
La valeur par défaut était
new AdressRecord { Name = "<new>", Adress = "?" }
J'ai remplacé par
default(AddressRecord)
Et vs2015 l'a mangé
public static readonly DependencyProperty AdressRecordsProperty =
DependencyProperty.Register("AdressRecords",
typeof(ObservableCollection<AdressRecord>),
typeof(PageViewModel),
new FrameworkPropertyMetadata(
default(AdressRecord),//This noes not work: new AdressRecord { Name = "<new>", Adress = "?" },
OnAdressRecordsChanged));
J'ai eu cette erreur dans une autre partie du code qui a à voir avec mes ressources d'application.
Cela a été corrigé après avoir explicitement défini le dossier ResourcePath
dans mon fichier App.config
J'ai eu le même problème. je pourrais le faire fonctionner en renommant le nom de App1.config à L'application.config. J'ai essayé toutes les autres méthodes mais la solution pour moi était de changer le nom par défaut (pour moi C'était App1.config) du fichier de configuration à L'application.config. J'ai partagé cela parce que quelqu'un peut obtenir de l'aide par cette petite modification.
Mon problème concernait l'interface. Je l'ai corrigé en supprimant le dossier Betternet situé à C:\ProgramData
.
Les éléments/dossiers cachés doivent être affichés pour pouvoir afficher le dossier.
Avec Visual Studio, il ne montrera parfois rien dans les détails de l'exception ou même les aura, l'exécution de l'outil de diagnostic peut cependant facilement identifier ce qui ne va pas.
Essayez D'ajouter "Integreted Security = True" dans la chaîne de connexion. Il a travaillé pour moi.
Dans mon cas, cela s'est produit dans un projet WPF en premier code. La cause était des changements de modèle après la restauration d'une sauvegarde, et l'erreur n'était pas gérée de manière appropriée. "Le modèle supportant le contexte' MyDataContext ' a changé depuis la création de la base de données."Mise à jour-Base de données trié.
Dans VS2015, j'ai pu voir le code spécifique causant ce problème une fois que j'ai activé 'Activer juste mon Code' dans les Options de débogage sous Outils - > Options.