Проектирование блогов с использованием MVC и DDD - PullRequest
2 голосов
/ 19 января 2009

Я проектирую архитектуру блога на asp.net mvc. Допустим, у меня есть только 2 объекта: пост и комментарий. мне нужен контроллер и репозиторий для каждого? как работает механизм отображения поста с его комментариями? Контроллер сообщений ищет в репозитории сообщений сообщение, затем просит контроллер комментариев извлечь все комментарии, связанные с этим сообщением, получает их из контроллера комментариев и передает их представлению? или, может быть, я должен написать сервис, который отвечает за запросы обоих репозиториев и возвращает результаты контроллеру сообщений, который передает их в представление?

Ответы [ 4 ]

1 голос
/ 19 января 2009

Я не уверен, какой ORM вы используете, но у меня будет только один репозиторий для сообщений. Когда я запрашиваю сообщение, все комментарии должны быть прикреплены (лениво или загружены в зависимости от конкретного экземпляра). В терминах DDD, я думаю, вы бы описали его как сущность Posts, которая является корнем совокупности 'Posts', если вы хотите просмотреть ее таким образом.

Я не думаю, что есть что-то плохое в наличии двух репозиториев в одном контроллере.

1 голос
/ 19 января 2009

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

  • редактирование
  • подписка
  • комментарии
  • аутентификация пользователей - например, определение владельца блога и постеров.

Какие еще идеи будут у вашего блога? Собираетесь ли вы попробовать некоторые новые идеи Kool, которые вы, возможно, не видели в другом месте? Если так, то как?

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

0 голосов
/ 24 августа 2010

Вас может заинтересовать этот другой пост , посвященный обсуждению ASP.NET MVC + CSLA + DDD. Здесь приведены хорошие примеры проектов, использующих их вместе.

0 голосов
/ 09 мая 2009

Вы можете оформить заказ, например,

...