Совместное использование кода в шаблоне Unit of Work - PullRequest
0 голосов
/ 23 декабря 2011

Это общий вопрос. Я разрабатываю систему с использованием шаблона «Единица работы». Существуют ли какие-либо устоявшиеся паттерны, в которых изложено, как распределять логику между несколькими единицами работы способом, который можно тестировать?

Вот более конкретный сценарий:

Есть заказ на покупку, который

UnitOfWork1 -> представляет заказ на утверждение

UnitOfWork2 -> утверждает или отклоняет ПО и отправляет его обратно отправителю

Обе единицы работ используют один и тот же код, например:

ShareLogic1 -> Пользователь должен иметь доступ к PO

SharedLogic2 -> Записать последнее действие на PO

Какие шаблоны я могу использовать, когда такая логика может быть разделена между несколькими единицами работы. Хотя наследование может решить проблему в этом случае, я не хочу использовать наследование, так как оно не подходит в каждом случае.

1 Ответ

0 голосов
/ 23 декабря 2011

Поместите эту логику в класс, и пусть обе единицы работы будут иметь к ней доступ.Кажется, что оба примера принадлежат к классу PurchaseOrderRepository.Используя инверсию управления, вы можете издеваться над ним.

...