Вопрос

Как реализовать шаблон репозитория в C # .net 2.0?

Просто покажи мне основную структуру. Потому что у нас нет DataContext в .net 2.0.

Это было полезно?

Решение

DataContext - это не шаблон репозитория, а активный шаблон записи. Как только вы поймете разницу между ними, вы поймете ответ на свой вопрос.

Active Record - это объектно-ориентированное представление ваших данных в базе данных.

Репозиторий - это объект, который находится в модели вашего домена, если он у вас есть, это означает, что его открытый интерфейс полностью отделен от вашей технологии доступа к данным.

Вы используете LINQ или SQL для запроса своей базы данных с помощью DataContext, и это имеет смысл, поскольку LINQ и SQL очень хороши для запроса данных.

Но когда вы запрашиваете свой репозиторий, поскольку мы больше говорим об объекте домена, чем о данных, мы используем шаблон спецификации , который на самом деле является языком мини-запросов, более подходящим для вашего домена.

В двух словах: Active Record = доступ к базе данных и данным, репозиторий = модель домена. В идеале, ваш клиент должен быть в состоянии понять дизайн вашей доменной модели (так, в частности, ваш репозиторий и классы спецификаций), но он не понимает, что такое DataContext, так как он является каналом разработчика.

Чтобы быть понятным, "пример шаблона хранилища в C # 2.0" не совсем то, что вы должны искать, "пример шаблона хранилища" есть, но внутренняя реализация будет использовать классический ADO вместо DataContext.

Другие советы

Вы можете увидеть пример для ASP.NET здесь , но я думаю, вы все равно могли бы понять идею.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top