Это нормально иметь там ссылку? - PullRequest
0 голосов
/ 26 февраля 2010

Я строю новый проект с помощью Castle ActiveRecord и у меня небольшой технический вопрос.

Я создаю рабочее пространство для своих проектов и добавил 5 проектов.

  • ViewModel для интерфейсов и логики приложения
  • Модель для базовых моделей классов
  • Тест для модульного тестирования
  • Клиент для моего клиента WPF
  • данные для моего источника данных

Затем я добавил несколько ссылок на Castle.ActiveRecord в Модель , ViewModel и data project. Я думаю, что у меня не должно быть так много ссылок на ActiveRecord в моем проекте. В общем случае в проекте данных, но у класса модели есть свои декораторы, чтобы заставить AR работать. Когда в ModelView нет ссылки на AR, он получает ошибки, когда я определяю свои интерфейсы для dao, что в моем ModelView нет ссылки на AR.

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

Можно ли добавлять ссылки на AR везде или как я могу решить эту проблему по-другому?

Спасибо Борис

1 Ответ

1 голос
/ 26 февраля 2010

ActiveRecord - это , который должен быть более инвазивным, чем NHibernate, поскольку он не использует чистые POCO. Если вы действительно хотите избежать этих ссылок, используйте вместо этого NHibernate.

Во всяком случае, ИМХО, у вас там слишком много проектов. И логика приложения в проекте ViewModel не звучит правильно. См. эту статью , чтобы найти обоснование для уменьшения количества проектов.

...