C# &引用;对类型';TestWPF.main窗口';与指定绑定约束匹配的将引发异常如何解决这个问题?

C# &引用;对类型';TestWPF.main窗口';与指定绑定约束匹配的将引发异常如何解决这个问题?,c#,wpf,exception,C#,Wpf,Exception,我和WPF一起工作。当我试图在代码中声明SQLiteConnection时,问题就出现了- 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 assembl

我和WPF一起工作。当我试图在代码中声明
SQLiteConnection
时,问题就出现了-

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.

有谁能告诉我,如何修复它吗?

在我的具体案例中,我之所以会这样,是因为我的一些引用程序集在x64和x86之间不匹配。显然,我绑定了一些需要运行时加载的东西


我在这里提到这一点是为了提醒您,如果您在其他地方看过,请检查您的构建配置

我遇到了同样的错误,在浪费了大约2个小时之后,发现是我的SQL Server服务没有运行。不确定这是否能帮助某人,但它确实解决了我启动服务的问题。

我在另一部分代码中遇到了这个错误,这部分代码与我的应用程序资源有关


在我的
App.config
文件中显式设置
ResourcePath
文件夹后,这一问题得到了修复。我遇到了相同的问题。我可以通过将App1.config的名称重命名为App.config来实现。我尝试了所有其他方法,但解决方案是将配置文件的默认名称(对我来说是App1.config)更改为App.config。我之所以分享这个,是因为有人可能会通过这个小小的修改获得帮助。

尝试在连接字符串中添加“Integreted Security=True”。
它对我很有用。

提到的验证非常通用,例如,当构造函数中的代码失败时,您可以收到它。我有一个IO异常的案例,它显示了一个类似的文本。进入代码可能会提供一些提示来解决这个问题,否则这些提示可能不明显。

我通过在
app.config
中添加以下内容解决了这个问题

<configuration> <startup useLegacyV2RuntimeActivationPolicy="true" /> </configuration>


我是通过用户在MSDN文章下面的社区添加发现这个问题的。

我遇到了这个问题,这是因为我的启动应用程序是以任何CPU构建的,但我引用了一个以x64构建的项目。将启动设置为生成x64解决了问题。

我的问题是关于接口的。我通过删除位于
C:\ProgramData
的Betternet文件夹修复了它

必须显示隐藏的项目/文件夹才能查看文件夹


在我的例子中,它发生在一个代码优先的WPF项目中。原因是恢复备份后模型发生了更改,错误处理不当。“自数据库创建以来,支持“MyDataContext”上下文的模型已更改。“更新数据库”将其排序。

如果单击“查看详细信息…”,您可以从异常窗口查看内部异常。展开该节点,您将看到错误所在。

当我使用默认值指定
DependencyProperty
FrameworkPropertyMetadata
时,我得到了它

默认值为

new AdressRecord { Name = "<new>", Adress = "?" }
我把它吃了

   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));
公共静态只读从属属性ADRESRECORDSPROPERTY=
DependencyProperty.Register(“ADRESRECORDS”,
类型(可观测采集),
类型(PageViewModel),
新框架属性元数据(
默认值(ADRESRECORD),//此noes无效:新ADRESRECORD{Name=”“,Adress=“?”},
(沙根德);;

使用Visual Studio,它有时不会在异常详细信息中显示任何内容,甚至不会显示它们,但是,运行诊断工具可以很容易地找出问题所在。

在VS2015中,当我在“工具->选项”下的调试选项中打开“仅启用我的代码”时,我能够看到导致此问题的特定代码。

我必须将目标.Net framework从4.5.2更改为4。

请显示所提到的代码构造器。看起来您正试图将文件作为不是.NET程序集的程序集加载。很好地解决了这个问题,并将它告知了其他人。也可能是默认名称。这给了我解决我自己的微妙问题所需要的线索。在我的例子中,
dependencProperty
的底层类型是
double
,但我给它分配了一个默认值
0
(一个
int
)。将默认值更改为
0.0
允许程序正确运行。很可能客户端系统没有安装.net 4.5.2。这几乎是每个人问题的答案。它应该被标记为答案。令人惊讶的是,有多少人懒得去看(或不知道)内心的例外。我最初认为这是因为乔的评论而产生的居高临下,但你是对的。这是一种罕见的情况,无用的错误消息中隐藏了大量内容。异常窗口在哪里?@demoave-假设您使用的是Visual Studio,当调试器捕获到错误时,会弹出异常窗口。
   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));