鏈接多個包含thenInclude拋出System.InvalidOperationException

entity-framework-core

考慮這個簡化的模型:

public class Field 
{
   public string Name { get; set; }
   public MultilingualString Label { get; set; }
   public MultilingualString Placeholder { get; set; }
}

public class MultilingualString 
{
   public string DefaultText { get; set; }
   public IList<Globalization> Globalizations { get; set; }
}

public class Globalization 
{
   public string Text { get; set; }
   public Language Language { get; set; }
}

public class Language
{
   public string Name { get; set; }
   public string CultureString { get; set; }
}

使用我的上下文,我試圖通過使用以下命令獲取我的所有字段並包括他們的Label和Placeholder以及全球化和語言(整個事物):

public class Field 
{
   public string Name { get; set; }
   public MultilingualString Label { get; set; }
   public MultilingualString Placeholder { get; set; }
}

public class MultilingualString 
{
   public string DefaultText { get; set; }
   public IList<Globalization> Globalizations { get; set; }
}

public class Globalization 
{
   public string Text { get; set; }
   public Language Language { get; set; }
}

public class Language
{
   public string Name { get; set; }
   public string CultureString { get; set; }
}

我拋出以下異常:

System.InvalidOperationException沒有數據時讀取的嘗試無效。

但是,僅使用第一個include / theninclude,我確實得到了預期的結果。

是什麼賦予了?這是一個已知的錯誤,還是我誤解了Include / ThenInclude語法?

這是使用ef7 beta4和VS2015 RC

一般承認的答案

這是EF 7中的一個錯誤。應該使用aspnet / EntityFramework#2474修復,在測試版6之前不會在公共EF版本中修復。當然,你也可以嘗試每晚構建




許可下: CC-BY-SA with attribution
不隸屬於 Stack Overflow
這個KB合法嗎? 是的,了解原因
許可下: CC-BY-SA with attribution
不隸屬於 Stack Overflow
這個KB合法嗎? 是的,了解原因