Как правильно использовать шаблон репозитория?

Мне интересно, как я должен группировать свои репозитории? Как и в примерах, которые я видел на asp.net mvc, и в моих книгах они в основном используют один репозиторий на таблицу базы данных. Но это похоже на то, что многие репозитории заставляют вас потом вызывать множество репозиториев для насмешек и прочего.

Так что я думаю, что я должен сгруппировать их. Однако я не уверен, как их сгруппировать.

Прямо сейчас я сделал регистрационный репозиторий для обработки всех моих регистрационных вещей. Однако есть 4 таблицы, которые мне нужно обновить, и прежде чем у меня было 3 репозитория, чтобы сделать это.

Например, одна из таблиц является таблицей лицензий. Когда они регистрируются, я смотрю на их ключ и проверяю, есть ли в базе данных. Что произойдет, если мне нужно будет проверить этот лицензионный ключ или что-то еще из этой таблицы в другом месте, кроме регистрации?

Одним местом может быть логин (проверьте, не истек ли срок действия ключа).

Так что я буду делать в этой ситуации? Переписать код еще раз (сломать DRY)? Попробуйте объединить эти 2 репозитория и надеяться, что ни один из методов не понадобится в какой-то другой момент времени (например, возможно, у меня может быть метод, который проверяет, используется ли userName - возможно, он понадобится мне где-нибудь еще).

Также, если я объединю их вместе, мне понадобится 2 сервисных слоя, идущих в один и тот же репозиторий, так как я думаю, что иметь всю логику для 2 разных частей сайта будет долго, и мне понадобятся имена вроде ValidateLogin (), ValdiateRegistrationForm () , ValdiateLoginRetrievePassword () и т. Д.

Или, в любом случае, позвонить в хранилище и просто назвать странно звучащее имя?

Просто кажется трудным создать репозиторий с достаточно общим именем, чтобы вы могли использовать его для многих областей своего приложения, и при этом иметь смысл, и я неНе думаете ли вы, что вызов другого хранилища в хранилище будет хорошей практикой?

Ответы на вопрос(7)

Ваш ответ на вопрос