Repository pattern
メンバーが実装されるユニバーサル基本クラスを作成しようとしています。コードは次のとおりです。
public abstract class RepositoryBase<TEntity, TType> : IRepository<TEntity, TType>
where TEntity : EntityBase<TType>
{
public IAdNetMsSqlContext Context { get; set; }
public DbSet<TEntity> DbSet { get; set; }
public RepositoryBase(IAdNetMsSqlContext context)
{
Context = context;
DbSet = context.Set<TEntity>();
}
public IQueryable<TEntity> Get(TType id)
{
//!!! Here is an error
return DbSet.FirstOrDefault(e => e.Id == id);
}
....
}
そして、私はエラーが発生します:
Error 1 Operator '==' cannot be applied to operands of type 'TType' and `'TType' .... AdNet.Common.Base
行で:
return DbSet.FirstOrDefault(e => e.Id == id);
何を考えたらいいのかわからない。TType は確実に TType と同じです。
どんな前進でもThx!