У меня есть эти 2 интерфейса:"не реализует член интерфейса" ошибка при использовании наследования
public interface IFilterHelper<T>
{
void Filter(ISearchModel<T> model, ref IQueryable<T> dbModel);
}
public interface ISearchModel<T>
{
IQueryable<T> GetDBModel(DbContext db);
}
И эти 2 реализаций
public class UserSearchModel : ISearchModel<ApplicationUser>
{
public IQueryable<ApplicationUser> GetDBModel(DbContext db)
{
return db.Users.Where(u => true); //something like this
}
}
public class UserFilterHelper : IFilterHelper<ApplicationUser>
{
public void Filter(UserSearchModel model, ref IQueryable<ApplicationUser> dbModel)
{
}
}
Однако я получаю ошибку 'UserFilterHelper' does not implement interface member 'IFilterHelper<ApplicationUser>.Filter(ISearchModel<ApplicationUser>, ref IQueryable<ApplicationUser>)'
Но когда я меняю UserSearchModel
с ISearchModel<ApplicationUser>
, он успешно компилируется. Я знаю, что могу бросить его и заставить его работать, но почему это дает мне эту ошибку. Как видите, класс UserSearchModel
реализует интерфейс ISearchModel<ApplicationUser>
. Что мне не хватает?
Большое спасибо. Теперь, когда я прочитал ваш ответ, я вижу, где я был неправ. Еще раз спасибо. –