Я думаю, вы неправильно понимаете концепцию «POCO»;POCO расшифровывается как Plain Old CLR Object.Таким образом, ваши объекты POCO не имеют никаких «обычных свойств и методов».У них есть только те свойства и методы, которые вы им предоставляете, вот и весь смысл.
Теперь вы можете настроить шаблоны POCO T4 и сделать все ваши классы POCO производными от определенного базового класса или реализовать определенныйинтерфейс, если хотите.У меня часто есть шаблон, где все мои классы имеют свойство public Guid Id
, и поэтому у меня есть базовый класс, который включает это свойство (и, возможно, некоторые даты аудита).Затем я модифицирую шаблоны, чтобы вывести мои классы POCO из этого базового класса и исключить свойство Id
из создаваемого.Учитывая такой сценарий, я мог бы использовать базовый класс в качестве ограничения в ограничении where
.