Нужно ли заново создавать классы моделей при использовании шаблона репозитория? - PullRequest
2 голосов
/ 13 сентября 2009

Я использую LinqtoSQL для приложения WPF MV-VM, так как в будущем я мог бы захотеть перейти с LinqtoSql на что-то другое, например Entity Framework или Subsonic и т. Д., Таким образом, я обнаружил, что шаблон репозитория будет полезен,

У меня вопрос, как мне создать классы модели, предположим, у меня есть таблица в базе данных, я понимаю, что не могу использовать сгенерированный класс LINQtoSQL в качестве класса модели, если я это сделаю, то я стану зависимым от LinqtoSQL, какой inturn лишит меня независимости от реализации шаблона хранилища, означает ли это, что мне нужно будет иметь свои собственные пользовательские классы для всех классов сущностей?

Ответы [ 2 ]

4 голосов
/ 13 сентября 2009

Господи, нет. Зачем ты сделал это для себя?

Вы уже должны дублировать так много в ваших ViewModels, зачем вам добавлять еще один слой дублирования для такого небольшого усиления, особенно учитывая, что L2S может использовать обычные типы cl 'clr?

Я считаю, что мои контракты на обслуживание от служб WCF и типов ORM к будут моей моделью. То, что оно не находится в пространстве имен * .Model, ничего не значит.

Если вам кажется, что вам нужен этот смазочный слой, пусть этот слой будет вашими моделями представления. Вот для чего они там.

1 голос
/ 13 сентября 2009

Да, это означает, что вам нужно реализовать свои собственные классы для всех классов сущностей. Это боль, но это текущее положение вещей.

См. этот SO-ответ для получения дополнительной информации по этому вопросу и некоторых возможных средств правовой защиты.

...