Я пытаюсь передать тип объекта методу. Я делаю это для своего CRUDRepository, который наследуется другими репозиториями, но я не могу понять, как узнать, с каким типом я работаю.
Например:
public PageOf<Entity> GetPageOfEntity(int pageNumber, int pageSize)
{
// Here i need to work with the entity type to make calls to database
}
Entity - это объект, который наследуется другими объектами (пользователем, продуктами и т. Д.), И этот метод возвращает постраничный результат. Я делаю это, чтобы избежать создания GetPageOf метода для каждой сущности, которую я имею.
Как правильно передать методу тип объекта, с которым я хочу иметь дело в постраничных результатах?
Edit:
Вот пример сущности
public abstract class Entity
{
public virtual long Id { get; set; }
public virtual DateTime Created { get; set; }
}
И пользовательский объект:
public class User : Entity
{
public string FirstName { get; set; }
}
Поскольку я пытаюсь написать отдельный класс для обработки некоторых необработанных операций, мне нужно знать в методе, какой объект я использую (но сейчас я пытаюсь создать один метод для каждого типа объекта)
Спасибо