EF CTP5 - IDbSet.Include

时间:2011-03-26 23:09:35

标签: entity-framework entity-framework-ctp5 entity-framework-4.1

我有一个通用存储库,我在使用Include扩展方法时遇到了一些问题。我的存储库看起来像这样:

public class Repository<TEntity> : IRepository<TEntity> {
    private IDbSet<TEntity> _entitySet;

    /*
        some init code
    */

    public TEntity GetByKey(params object[] keys) {
        return _entitySet.Find(keys);
    }

    /*
        more db query methods
    */

    public IRepository<TEntity> Include(Expression<Func<TEntity, object>> selector) {
        _entitySet = _entitySet.Include(selector) as IDbSet<TEntity>;
        return this;
    }
}

这应该被称为这样:

var blogRepository = new Repository<Blog>();
var blogEntry = blogRepository
    .Include(b => b.Posts)
    .Include(b => b.Someothercollection)
    .GetByKey(1);

这里的问题是当我将包含在我的存储库中的返回值转换为IDbSet&lt;&gt;我一直都是空的。我一定做错了,但我不确定是什么。有什么想法吗?

由于

0 个答案:

没有答案