2015-05-23 42 views
2

考虑这个简化的模型:连锁多种包括与thenInclude抛出System.InvalidOperationException

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; } 
} 

使用我的背景,我试图让我的所有领域,包括他们的标签和占位符与全球化和语言的速度(在整件事)通过使用以下命令:

var field = context.Fields 
    .Include(x => x.Label.Globalizations) 
    .ThenInclude(x => x.Language) 
    .Include(x => x.Placeholder.Globalizations) 
    .ThenInclude(x => x.Language) 
    .ToList(); 

我得到下面的异常抛出:

System.InvalidOperationException 无数据存在时无效尝试读取。

但是,只使用第一个include/theninclude,我确实得到了预期的结果。

什么给?这是一个已知的错误,还是我误解了Include/ThenInclude语法?

这是使用EF7 BETA4与VS2015 RC

+1

https://github.com/aspnet/EntityFramework/issues/2274 –

回答

相关问题