我构建了一个数据库,并使用Entity Framework生成了一些域模型类。基本上VideCollection
是一组视频,我想在某些页面上显示每个视频集以及它的视频。在存储库模式之后,我为视频集合创建了一个存储库。我可以从数据库中提取VideoCollection对象。问题是我需要“修复”对象以添加相应的视频。这是正确的做法吗?如果是这样,那么我需要“修复”视频以引入他们的评论等,从而导致巨大的链条。我理解LINQ延迟查询,但这似乎没有必要从数据库中提取太多信息。我正在使用ASP.NET MVC3。
如果有人能指出我正确的方向,那将非常感激!
using System;
using System.Linq;
using VideoCart.Domain.Abstract;
using VideoCart.Domain.Entities;
namespace VideoCart.Domain.Concrete
{
public class EFVideoRepository : IVideoRepository
{
private readonly EFDbContext _context = new EFDbContext();
public IQueryable<VideoCollection> GetVideoCollections()
{
IQueryable<VideoCollection> videoCollections = _context.VideoCollections;
foreach (var videoCollection in videoCollections)
{
videoCollection.Videos = _context.Videos.Where(x => x.VideoCollectionId == videoCollection.Id);
}
return videoCollections;
}
}
}