1

汎用リポジトリを作成しました

ここに私のコードがあります:

public interface IGenericRepository<T> : IDisposable where T: class 
{
    void Save();

    void Insert(T entity);
    void Delete(T entity);
}

public class GenericRepository<T> : IGenericRepository<T> where T: class 
{
    private readonly DSContext _context;

    public GenericRepository()
    {
        _context = new DSContext();
    }

    public void Save()
    {
        _context.SaveChanges();
    }

    public void Insert(T entity)
    {
        _context.Set<T>().Add(entity);
    }


    public void Delete(T entity)
    {
        _context.Set<T>().Remove(entity);
    }
}

これが私のemployeeRepositoryです。その空、そこには何もありませんが、employeeRepository は GenericRepository から継承されます。「保存、挿入、削除」はemployeeRepositoryで利用できるはずだと思います。しかし、サービスレイヤーでemployeeRepositoryを使用すると、それらはありません。

public interface IEmployeeRepository
{ 

}

public class EmployeeRepository: GenericRepository<Employee>, IEmployeeRepository
{
    public EmployeeRepository():base()
    {
    }
}
4

1 に答える 1