Работа с несовпадением импедансов с источником сопоставления Linq-to-Sql XML - PullRequest
0 голосов
/ 08 апреля 2011

Я пытаюсь внедрить Linq-to-SQL в качестве технологии доступа к данным (инструмент ORM) в проекте DDD. L2S не был моим выбором, но это то, с чем я должен работать (пока).

После DDD моя модель домена уже создана, и она не будет соответствовать моей нормализованной схеме базы данных. (Ничего необычного здесь). Я пытаюсь реализовать L2S для использования моих доменных объектов в качестве POCO, используя внешний файл сопоставления XML в качестве MappingSource для моего DataContext. Все это хорошо, пока я не столкнусь с более сложным отображением.

В моем доменном слое у меня есть класс Appointment, у которого есть дочернее свойство типа Recurrence. Повторение является базовым классом, и фактическая реализация обеспечивается различными подклассами в зависимости от типа шаблона повторения. Из кода я могу создать соответствующий подкласс, используя класс RecurrenceFactory. Однако в моей базе данных у меня просто есть таблица назначений, в которой есть два столбца: RecurrenceType и RecurrenceValue.

Как настроить файл сопоставления XML для использования RecurrenceFactory для создания соответствующего подкласса с использованием столбцов RecurrenceType и RecurrenceValue из базы данных?

Если это невозможно, я должен полностью изменить направление своей реализации. Ваши мысли ценятся!

1 Ответ

0 голосов
/ 12 апреля 2011

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

На основании обсуждения в этом посте, Какзаставить POCO работать с Linq-to-SQL со сложными отношениями в DDD , похоже, проблема не в файле XML Mapping, а в том, что сам Ling-to-SQL не поддерживает ничего, кроме подхода «класс на таблицу».

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