>>>namespace SysManager.Repository >>>{ >>> public abstract class RepositoryBase<T> : IRepository<T> where T : class >>> { >>> protected readonly ISiriusSqlContext _siriusContext; >>> >>> protected readonly IDbSet<T> _dbSet; >>> private readonly IExceptionParser _exceptionParser; >>> >>> public RepositoryBase(ISiriusSqlContext context) >>> { >>> _siriusContext = context; >>> _dbSet = _siriusContext.Set<T>(); >>> _exceptionParser = new ExceptionParser(); >>> >>> } >>> etc. >>>>>>
>>> public abstract class RepositoryBase<T, TList> : IRepository<T> where T : class, where TList: class >>> { >>> protected readonly ISiriusSqlContext _siriusContext; >>> >>> protected readonly IDbSet<T> _dbSet; >>> private readonly IExceptionParser _exceptionParser; >>> >>> public RepositoryBase(ISiriusSqlContext context) >>> { >>> _siriusContext = context; >>> _dbSet = _siriusContext.Set<T>(); >>> _exceptionParser = new ExceptionParser(); >>> >>> } >>>>>>
> public class GuestsRepository : RepositoryBase<Guests>, IGuestsRepository > { > public GuestsRepository(ISiriusSqlContext context) : base(context) > { > > } >>
public class RepositoryBase<T> where T:class { private List<T> _list; protected RepositoryBase(List<T> x ) { _list = x; } } public class GuestBase<T,TList> : RepositoryBase<T> where T:class where TList:class { protected GuestBase(List<T> thing) : base(thing) {} } public class GuestRepository : GuestBase<X,Guests> { private List<Guests> _guests; public GuestRepository(List<X> xx, List<Guests> guests ) : base(xx) { _guests = guests; } }