2014-08-28 2 views
0

Я создал новую службу с шаблоном ServiceStack Visual Studio («ServiceStack ASP.NET Empty»).Шаблоны Visual Studio ServiceStack и шаблон REPOSITORY

Это создает 4 проекта, ServiceModel, ServiceInterface, ServiceHost и тестовый проект. Если бы я должен был инкапсулировать мой доступ к данным с помощью шаблона REPOSITORY через интерфейс (think dependency injection), и ему не разрешалось добавлять какие-либо другие проекты в решение, какой проект должен содержать этот код и почему? Если код репо должен был быть перенесен в другой проект, какими будут зависимости проектов, то есть ServiceModel, ServiceInterface?

Спасибо, Стефану

ответ

1

ServiceHost и тестовый проект. Если бы я должен был инкапсулировать мой доступ к данным с помощью шаблона REPOSITORY через интерфейс

Для получения дополнительной информации о макете физического проекта см. .

ServiceStackVS's VS.NET templates следует за вышеуказанной структурой физического проекта, где только ServiceInterface используется для поддержки реализации ваших услуг и пользовательской логики. Все остальные стартовые проекты имеют разные цели, например.

  • верхнего уровня Host проект является клей, где регистрируются и соединены вместе, что в противном случае должен быть легкий вес и логику, свободной от всех ваших конкретных зависимостей.
  • Проект ServiceModel - это проект dep/impl-free для поддержки ваших DTO контрактов на обслуживание, которые должны быть свободны от реализаций сервера, поэтому его можно использовать в клиентских проектах.

Оба интерфейса и реализация могут работать в одном проекте. Некоторые демонстрации ServiceStack после этого макета - это класс IRepository в RedisStackOverflow, а также класс IEmailer в EmailContacts.

Смежные вопросы