Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/268.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 为什么我会收到';系统数据dll';中发生system ExecutionEngineeException类型的未处理异常;错误_C#_Dll_Datatable_Unhandled Exception - Fatal编程技术网

C# 为什么我会收到';系统数据dll';中发生system ExecutionEngineeException类型的未处理异常;错误

C# 为什么我会收到';系统数据dll';中发生system ExecutionEngineeException类型的未处理异常;错误,c#,dll,datatable,unhandled-exception,C#,Dll,Datatable,Unhandled Exception,我正在为SQL Server Integration services编写自定义组件(DLL),尝试调试该组件时收到以下错误: 在中发生“System.ExecutionEngineeException”类型的未处理异常 System.Data.dll 当我在未调试的情况下运行组件时,我不会收到此错误以及在调试时引发此错误的代码段是此代码的第二行: DataTable table; table = new DataTable(); 我已尝试运行此: 但我仍然得到了错误 我还使用以下代码创建了一

我正在为SQL Server Integration services编写自定义组件(DLL),尝试调试该组件时收到以下错误:

在中发生“System.ExecutionEngineeException”类型的未处理异常 System.Data.dll

当我在未调试的情况下运行组件时,我不会收到此错误以及在调试时引发此错误的代码段是此代码的第二行:

DataTable table;
table = new DataTable();
我已尝试运行此: 但我仍然得到了错误

我还使用以下代码创建了一个简单的windows窗体项目:

       DataTable table;
       table = new DataTable();
       table.Columns.Add("Dosage", typeof(int));
       table.Columns.Add("Drug", typeof(string));
       table.Columns.Add("Patient", typeof(string));
       table.Columns.Add("Date", typeof(DateTime));

        table.Rows.Add(25, "Indocin", "David", DateTime.Now);
        table.Rows.Add(50, "Enebrel", "Sam", DateTime.Now);
        table.Rows.Add(10, "Hydralazine", "Christoff", DateTime.Now);
        table.Rows.Add(21, "Combivent", "Janet", DateTime.Now);
        table.Rows.Add(100, "Dilantin", "Melanie", DateTime.Now);

我在调试时没有遇到错误。有人知道我为什么会出现此错误以及如何调试代码吗?

通常这是由于编译64位程序集并试图从32位进程或visa使用它造成的。

通常这是由于编译64位程序集并试图从32位进程或visa使用它造成的。

我也有同样的问题正如Cooper Cripps所说,当我在x64模式下调试应用程序时,会发生我的错误,当我到达conn.Open()时会抛出这个错误

使用(var conn=new SqlConnection(connString)){
conn.Open();
}

但如果我没有附加调试器(使用Ctrl+F5运行),它仍然可以工作。 最后,通过使用以下方法重置用户设置解决了此问题:

C:\Program Files(x86)\Microsoft Visual Studio 14.0\Common7\IDE\devenv“-重置设置常规


我的问题与Cooper Cripps所说的完全相同,我的问题是在x64模式下调试应用程序时发生的,当我到达conn.Open()时会抛出错误

使用(var conn=new SqlConnection(connString)){
conn.Open();
}

但如果我没有附加调试器(使用Ctrl+F5运行),它仍然可以工作。 最后,通过使用以下方法重置用户设置解决了此问题:

C:\Program Files(x86)\Microsoft Visual Studio 14.0\Common7\IDE\devenv“-重置设置常规


如果选中调试->常规选项“使用托管兼容性模式”,则可能会导致此错误。它使用了一个旧的调试引擎,并且该调试引擎显然不能很好地处理System.Data.dll中的内容。

如果选中调试->常规选项“使用托管兼容模式”,则可能会导致此错误。它使用了一个旧的调试引擎,而该调试引擎显然不能很好地处理System.Data.dll中的内容。

您要针对的是.NET framework的哪个版本?@icemanind targeting 4。0@CooperCripps:你能找出这个问题背后的原因吗?当我尝试开始调试我的webapi时,但我已经有个客户想和它谈谈了。这不知怎的塞满了我的DBContext。你的目标是.NET framework的哪个版本?@icemanind targeting 4。0@CooperCripps:你能找出这个问题背后的原因吗?当我试着开始调试我的webapi时,我明白了,但我已经有一个客户端试图与它对话。这不知怎么搞砸了我的数据库上下文