无法评估前pression,因为线程停止在一个点,垃圾收集是不可能的

无法评估前pression,因为线程停止在一个点,垃圾收集是不可能的

问题描述:

下面是错误

无法计算EX pression,因为线程停止在一个点,垃圾收集是不可能的,可能是因为code进行了优化。

Cannot evaluate expression because a thread is stopped at a point where garbage collection is impossible, possibly because the code is optimized.

我写了一个简单的控制台应用程序和code中的第一行是这样的:

I am writing a simple console app and the first line of code is this:

List<MyObjectModel> list = MyObjectModel.GetNonCompletedReturns();

和code的作用是:

and the code for the function is:

public static List<MyObjectModel> GetNonCompletedReturns()
{
    MyObject service = new MyObject();
    List<MyObject> entities = 
                      (from recs in service.Retrieve() where select recs).ToList();

    List<MyObjectModel> models = new List<MyObjectModel>();

    foreach (MyObject entity in entities)
    {
        models.Add(BindModel(entity));
    }

    return models;
}

如果我尝试逐步执行code,我只要一回到主我的应用程序,并悬停在该列表中,我得到了我发现的错误消息。

and if I try to step through the code, as soon as I get back to the main of my app and hover over the list, I get the error message that I showed.

谁能帮助?

只有当你试图调试过程中使用手表对话框这个错误的火灾。 尝试使用其他技术输出变量,如的Debug.WriteLine Console.WriteLine 等等。

This error fires only when you are trying to use Watch dialog during debug. Try to use some other technique to output the variables, like Debug.WriteLine, Console.WriteLine and so on.