サブソニック 3 のソース コードを読んでいます。ファイル IRepository.cs で、次のものが見つかりました。
public interface IRepository<T>
{
IQueryable<T> GetAll();
PagedList<T> GetPaged<TKey>(Func<T, TKey> orderBy, int pageIndex, int pageSize);
...many other lines
bool Load<T>(T item, Expression<Func<T, bool>> expression) where T : class, new();
bool Load<T>(T item, string column, object value) where T : class, new();
}
Load メソッドがジェネリックとして定義されており、それらのジェネリック型名がインターフェイスのジェネリック型と同じであるため、コンパイラの警告が発生することに注意してください。
私の質問は次のとおりです: Load メソッドは本当にジェネリックであることを意図していますか、それとも間違いでしたか? メソッドがジェネリックであることを意図している場合、コンパイラを満足させるために、型名を「T」から「E」などの別のものに変更する必要がありますか?