Страницы

Поиск по вопросам

понедельник, 18 февраля 2019 г.

Как создать абстрактный класс с обобщенными параметрами, которые сами имеют обобщенные параметры?

Имеем 2 абстрактных класса
public abstract class Criteria where TEntity : class
public abstract class OperationResult where TEntity : class
Хочется сделать что-то такое, но не выходит.
public abstract class Query, TOperationResult>


Ответ

Судя по всему, вам нужно, чтобы параметры обобщения были сами по себе обобщениями TEntity. Такое требование прямо наложить нельзя, но можно схитрить, добавив третий параметр и условия:
public abstract class Query where TEntity : class where TCriteria : Criteria where TOperationResult : OperationResult { // ... }

Комментариев нет:

Отправить комментарий