SQL和LINQ的ExecutionEngineException

时间:2013-07-30 11:22:08

标签: c# linq

我的代码正在尝试使用LINQ to SQL从数据库加载。目前,当我似乎触摸查询返回的内容时,我发现崩溃时出现错误ExecutionExceptionError:

problem

目前我的代码非常简单,我有一个标准的dbml类,用于加载单个表MC:

 private void RibbonButton_Click(object sender, RoutedEventArgs e)
    {
        MultipleChoiceDataContext t = new MultipleChoiceDataContext();
        var test =
            from a in t.GetTable<MC>()
            select a;

        testbox.Content = test.First().question;
    }

错误发生在

  

test.First()问题;

我之前找不到任何帮助,或者之前遇到此问题的人,所以我希望有人可能知道如何解决这个问题

2 个答案:

答案 0 :(得分:0)

ExecutionEngineException表示CLR存在内部问题。它表示以下之一:

  1. 您使用了不安全的代码或PInvoke导致内存损坏。 CLR的数据结构现在已损坏。
  2. 其他一些图书馆做了这个(一个错误)。
  3. CLR本身的一个错误。
  4. 在所有情况下,解决方案都是解决问题,可能是随机更改内容,直到应用程序中断。尝试重构代码,注释掉内容,直到错误消失。将事物纳入新方法。想想你正在使用的图书馆是否会做不安全的事情。也许堆栈跟踪可以告诉您要避免的功能。

    这是一种非常无法解决的方法,但我知道的最好。很难解决,因为你没有做任何具体的错误。特别是,您显示的代码行通常不会导致内存损坏。

答案 1 :(得分:0)

事实证明问题是由于安装了Visual Studio 2013的预览,卸载后,该解决方案在Visual Studio 2012上再次完美运行

感谢您的帮助!