Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/entity-framework/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Entity framework 。以下查询中的包含不包括 var diaryEntries=(来自repository.GetQuery()中的条目) .包括(“日记条目等级变更日志”) .包括(“日记事件”) 在repository.GetQuery()中加入日志 在entry.DiaryId等于diary.Id时 组条目 记日记 进入日记中心组 选择新建{Diary=diaryEntriesGroup.Key, DiaryEntry=diaryEntriesGroup.OrderByDescending(DiaryEntry=>DiaryEntry.DateModified).FirstOrDefault(), });_Entity Framework_Include - Fatal编程技术网

Entity framework 。以下查询中的包含不包括 var diaryEntries=(来自repository.GetQuery()中的条目) .包括(“日记条目等级变更日志”) .包括(“日记事件”) 在repository.GetQuery()中加入日志 在entry.DiaryId等于diary.Id时 组条目 记日记 进入日记中心组 选择新建{Diary=diaryEntriesGroup.Key, DiaryEntry=diaryEntriesGroup.OrderByDescending(DiaryEntry=>DiaryEntry.DateModified).FirstOrDefault(), });

Entity framework 。以下查询中的包含不包括 var diaryEntries=(来自repository.GetQuery()中的条目) .包括(“日记条目等级变更日志”) .包括(“日记事件”) 在repository.GetQuery()中加入日志 在entry.DiaryId等于diary.Id时 组条目 记日记 进入日记中心组 选择新建{Diary=diaryEntriesGroup.Key, DiaryEntry=diaryEntriesGroup.OrderByDescending(DiaryEntry=>DiaryEntry.DateModified).FirstOrDefault(), });,entity-framework,include,Entity Framework,Include,此查询不包括“DiaryEntryGradeChangeLog”和“DiaryEntryAction”导航属性,此查询有何错误 我已经从查询中删除了join,并按照下面的说明进行了更正,但它仍然没有填充任何内容 var diaryEntries = (from entry in repository.GetQuery<OnlineDiary.Internal.Model.DiaryEntry>() .Include("Di

此查询不包括“DiaryEntryGradeChangeLog”和“DiaryEntryAction”导航属性,此查询有何错误

我已经从查询中删除了join,并按照下面的说明进行了更正,但它仍然没有填充任何内容

var diaryEntries = (from entry in repository.GetQuery<OnlineDiary.Internal.Model.DiaryEntry>()
                               .Include("DiaryEntryGradeChangeLog")
                               .Include("DiaryEntryAction")
                                           join diary in repository.GetQuery<OnlineDiary.Internal.Model.OnlineDiary>()                                           
                                           on entry.DiaryId equals diary.Id
                                           group entry
                                           by diary
                                           into diaryEntriesGroup
                                           select new { Diary = diaryEntriesGroup.Key,
                                               DiaryEntry = diaryEntriesGroup.OrderByDescending(diaryEntry => diaryEntry.DateModified).FirstOrDefault(),
                                           });
var diaryEntries=from repository.GetQuery()中的条目
.Include(“DiaryEntryGrade变更日志”).Include(“DiaryEntryAction”)
.式中(e=>1==1)
组条目
通过entry.online日记
分为日记条目组
挑选
new{DiaryEntry=diaryEntryGroups.OrderByDescending(DiaryEntry=>DiaryEntry.DateModified).FirstOrDefault()};

它不会
Include
仅在查询的形状没有改变(按设计)时才起作用。如果使用此查询,它将起作用,因为查询的形状仍然相同(
OnlineDiary.Internal.Model.DiaryEntry
):


或者任何类似的查询,在该查询中,您手动填充属性,以便将关系投影到匿名或未映射类型。

它只是说它们为null,即使我可以在数据库中正确地看到它们。澄清一下,“不填充任何内容”是指
日记条目
为null吗?或者,
IQueryable
是否可以不带项目?或者使用具有空属性的正确数量的对象填充?diaryEntries正在使用DiaryEntry集合填充,这很好。。。“DiaryEntryGradeChangeLog”集合和“DiaryEntryAction”导航属性为空。因此,您不能使用
包含
,必须使用更复杂的投影(将加载相关数据)或通过单独的查询加载相关数据。连接导致了问题,但选择应该可以,因为它是在计算完结构后应用的?请参阅问题的编辑版本,我已经在修订的查询中放置了,但它仍然没有填充任何内容,您仍然在使用分组和投影。您不能在这样的查询中使用Include。我感兴趣的是,这种工作方式是“设计的”——rational在这个决定背后可能是什么?
var diaryEntries = from entry in repository.GetQuery<OnlineDiary.Internal.Model.DiaryEntry>()
                                   .Include("DiaryEntryGradeChangeLog").Include("DiaryEntryAction")
                                   .Where(e => 1 == 1)
                                       group entry
                                       by entry.OnlineDiary
                                       into diaryEntryGroups
                                       select 
                                       new { DiaryEntry = diaryEntryGroups.OrderByDescending(diaryEntry => diaryEntry.DateModified).FirstOrDefault() };
var diaryEntries = (from entry in repository.GetQuery<OnlineDiary.Internal.Model.DiaryEntry>()
                           .Include("DiaryEntryGradeChangeLog")
                           .Include("DiaryEntryAction");
var diaryEntries = from entry in repository.GetQuery<OnlineDiary.Internal.Model.DiaryEntry>()
                   group entry by entry.OnlineDiary into diaryEntryGroups
                   let data = diaryEntryGroups.OrderByDescending(diaryEntry => diaryEntry.DateModified).FirstOrDefault()
                   select new { 
                       DiaryEntry = data,
                       GradeChangeLog = data.DiaryEntryGradeChangeLog,
                       Action = data.DiaryEntryAction
                   };