类型为“System.StackOverflowException”的实体框架的未处理异常

时间:2018-01-03 22:36:56

标签: c# entity-framework

我遇到了最棘手的问题;我降级到ef5 6仍在为我播放,但现在我正在跟随它在下面的线路上崩溃

 /// <summary>
 /// Initializes a new SMBASchedulerEntities object using the connection string found in the 'SMBASchedulerEntities' section of the application configuration file.
 /// </summary>
public SMBASchedulerEntities() : base("name=SMBASchedulerEntities", "SMBASchedulerEntities")
{
    this.ContextOptions.LazyLoadingEnabled = true;
    OnContextCreated();
}

有问题的错误是

  

mscorlib.dll中出现未处理的“System.StackOverflowException”类型异常

我有一个允许我在其他表单上调用我的保存上下文的属性

private SMBASchedulerEntities _SourceEntities;

public SMBASchedulerEntities SourceEntities
{
    get
    {
         _SourceEntities = new SMBASchedulerEntities();
         return SourceEntities;
    }
}

我不知道这里发生了什么,因为我之前从未遇到过这个错误。

1 个答案:

答案 0 :(得分:7)

您在财产获取者中引用了您的财产

 private SMBASchedulerEntities _SourceEntities;
 public SMBASchedulerEntities SourceEntities
 {
      get
      {

          _SourceEntities = new SMBASchedulerEntities();


          return SourceEntities; <-- should be _SourceEntities 
      }
}

基本上,如果调用中的调用次数太多,则抛出此异常。 (或在这种情况下“无限”)