Если у вас есть несколько единиц работы, у вас в конечном итоге возникнут проблемы, потому что, если вы попытаетесь связать сущность из одного контекста (единицы работы) с сущностью из другого контекста, у вас возникнет коллизия отслеживания изменений.
Предполагая, что у вас есть бизнес-уровень с именем .Task или чем-то подобным, каждая задача должна создавать единицу работы и передавать ее в вызываемые репозитории, поскольку это задача, а не репо, которая должна знать, как сущности должны быть сведены вместе.
Можно иметь по умолчанию репо по умолчанию UOW, если оно не предусмотрено, но это может привести к слабому кодированию задачи, когда вы в конечном итоге создаете репо без UOW, а затем используете его выход в чем-то, что имеет свой собственный UOW.
Избегайте также одной общей статической единицы работы - с другой стороны, задача, а не репо или модель, должна решать, когда следует применить изменения.