Дозвуковые Длины строк Простого Репозитория
-
21-09-2019 - |
Вопрос
Я играю с поставщиком SimpleRepository (с автоматическими миграциями) в SubSonic 3, и у меня возникла досадная проблема:
Единственный способ, которым я могу контролировать длину строки в таблицах моей базы данных, - это добавить атрибуты SubSonicStringLength или SubSonicLongString к свойствам объектов, которые необходимо сохранить.
На самом деле мне не нужна зависимость от SubSonic где бы то ни было, кроме как в моем классе репозитория, и уж точно не в моих объектах модели, если я могу этого избежать.
Есть ли какой-нибудь способ обойти это, или я застрял, используя SubSonicStringLength и другие атрибуты?
Решение
По сути, единственным способом обойти это было бы иметь объект DTO, который вы сопоставляете с вашими классами SimpleRepository / из них внутри вашего репозитория.Вы могли бы использовать инструмент отображения, такой как Автоматический преобразователь для преобразования в / из ваших DTO в ваши объекты SimpleRepo.Это изолировало бы ваше приложение от дозвуковых зависимостей за пределами вашего репозитория, но, очевидно, потребовало бы нетривиального объема работы.