У меня есть мастер, который должен подтвердить, что пользователь вошел в систему, а затем в конце подтвердить, что все введенные данные верны.Дизайн ООП: Где должна использоваться повторная проверка?
Проблема в том, что я не уверен, где поставить логику проверки. На данный момент у меня есть класс BuyMembership, который имеет проверку на метод Buy(). Однако это не будет вызываться в начале мастера, где мне нужно проверить, является ли пользователь уникальным и имеет право на покупку членства.
Для этой проверки я создал класс BuyMembershipValidation, который проверяет, имеет ли пользователь право на участие.
Проблема в том, что я должен передать другой объект параметра классам BuyMembershipValidation и BuyMembership. Это означает, что данные разделены.
Есть ли лучший способ сделать это. Должен ли я загружать часть информации в класс BuyMembership для первоначальной проверки, а затем загружать оставшуюся часть после?
Update:
мне нужно проверить, когда они входят мастера (проверьте, если они уже авторизованы), и если они не являются, то они будут регистрироваться в качестве нового пользователя в противном случае я бы проверить, если у них есть правильные настройки, чтобы покупать членство, поскольку все пользователи не могут купить членство. Вот почему мне нужны два набора валидации. Один из них касается того, являются ли они подходящими, а другой для фактических данных, которые они вводят для регистрации. Однако я хотел бы перепроверить, что они имеют право на участие в финальной транзакции на случай, если они каким-то образом завершили первый шаг мастера или если веб-служба (где я делаю логику) вызывается из другого места позднее точка.
Другой Update:
Я добавил ответ с моим решением.
TIA, Jonathan.