Вы бы создали службу WCF для ...? - PullRequest
1 голос
/ 09 января 2010

Это вопрос дизайна.

Если бы вам пришлось создавать решение с топ-5 клиентами, которые смотрели на SQL Server (хотя клиенты могли читать разные базы данных с одинаковой схемой) только в локальной сети, вы бы создали службу WCF для работы с базами данных (CRUD) или просто оставить Data Access Layer прямо в клиенте? что делает клиента независимым!

Ответы [ 2 ]

3 голосов
/ 09 января 2010

Если это в локальной сети и никогда не будет где-либо еще - не добавляйте ненужный слой WCF сверху.

Если вы ожидаете, что внешние источники когда-нибудь захотят получить доступ к этим данным - тогда может иметь смысл использовать WCF DataService или что-то подобное для предоставления данных.

WCF и Dataservices всегда добавляют некоторый дополнительный слой, некоторую дополнительную обработку и, следовательно, снижают производительность. Если у вас всего 5 локальных пользователей (в локальной сети вашей компании), то, на мой взгляд, нет никаких веских причин использовать для этого сервис WCF. Просто используйте хорошую технологию доступа к данным (Linq-to-SQL, Entity Framework, NHibernate) и получите прямой доступ к этой базе данных.

Дополнительный уровень обслуживания WCF не дает вам никаких преимуществ в этом сценарии, так что не усложняйте вещи излишне, чем они должны быть.

0 голосов
/ 09 января 2010

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

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