0

我有一个包含所有内容列表的存储库:

private Repository<Content> contentRepository

我有一个包含内容统计信息列表的存储库:

private Repository<ContentStatistic> statisticRepository

在内容模型中有一个 ContentStatisticID 将两个类作为外键链接

我已经声明了一个名为 MostPopularContent 的 IEnumerable,并且正在尝试创建 8 个观看次数最多的视频的列表,因为统计类还有其他信息,比如谁喜欢它等我将观看次数留在 content.cs 类之外

我已经尝试了以下代码,但它出错了,我似乎无法找到解决方法:

MostPopularContent = contentRepository.GetAll()
            .Join(statisticRepository.Get(s => s.Views != 0),
            c => c.ContentStatisticID,
            s => s.ContentStatisticID,
            (c, s) => new Content()
            {
                ContentID = c.ContentID,
                Views = s.Views
            })
            .Take(8)
            .ToList(); 

当我运行它时,我收到以下错误:

无法创建“Data.ContentStatistic”类型的常量值。此上下文仅支持原始类型或枚举类型。

4

1 回答 1

0

我的问题出现了,因为我没有设置初始化延迟加载,所以虚拟属性总是返回为零。我通过将以下代码行添加到我的 ViewModel 克服了这个问题:

this.dbcontext.Configuration.LazyLoadingEnabled = true;

在视图本身中,我还对一些更复杂的模型进行了一系列嵌套查询,并且必须将以下段添加到连接字符串中:

MultipleActiveResultSets=True";
于 2013-06-26T20:21:17.123 回答