次のようなリポジトリがあります。
public class Repository<TEntity> : IRepository<TEntity> where TEntity : class, IEntity
{
protected readonly IContext _db;
public Repository(IContext context)
{
_db = context;
}
...
}
このクラスのメソッド内で、次のようなインクルードを含むステートメントを記述できます。
var regionalAdmins = _db.Users.Include("Areas");
そこで、そのリポジトリを継承するリポジトリを作成しました。
public class AreaRepository : Repository<Area>
{
public AreaRepository(IContext context) : base (context)
{
}
public new IEnumerable<Area> GetAreas()
{
return _db.Users.Include("Areas");
}
}
このレベルでは、エラーが発生します:
System.Data.Entity.IDbSet' には 'Include' の定義が含まれておらず、タイプ 'System.Data.Entity.IDbSet' の最初の引数を受け入れる拡張メソッド 'Include' が見つかりませんでした
なぜこれが起こるのでしょうか?私は親から来ているのと同じコンテキストを持っています。