С точки зрения Silverlight WCF в большой степени ограничивается так или иначе, так большая часть обычный , преимущества WCF не применяются. Однако это - все еще довольно хорошая, последовательная модель программирования.
WCF является, прежде всего, стеком SOAP, таким образом, это очень хорошо в представлении данных как твердые операции. Услуги передачи данных ADO.NET являются стеком REST и позволяют очень выразительным запросам быть выполненными динамично по проводу.
я не знаю, как это находится в Silverlight, но регулярный прокси Услуг передачи данных ADO.NET (бит на Вашем клиентском приложении) имеет очень богатую поддержку и запроса и данных, возвращается к серверу. Обратите внимание, что применение изменений требует любого a: Платформа Объекта или b: большая работа. Но необходимо получить запрос и обновление очень дешево с этим подходом.
С WCF, Вы получаете намного более управляемый стек, таким образом, необходимо будет кодировать все отличные операции, Вы хотите смочь сделать. Но это также означает, что у Вас есть известная поверхность атаки и т.д.; намного более трудно использовать заблокированный вниз API как фиксированная конечная точка SOAP.
Ре регулярные веб-сервисы (pre-WCF): только спуститесь по тому маршруту, если Вы хотите поддерживать очень определенные вызывающие стороны прежней версии.
Если необходимо выбрать между веб-сервисом и сервисом WCF, мой совет состоит в том, чтобы пойти с WCF. Это - более современная и более мощная технология. Что касается Услуг передачи данных ADO.NET - можно использовать это, если все, в чем Вы нуждаетесь, должно получать/фиксировать некоторые данные из базы данных назад по серверу.
Я знаю, что это старый, но я просто хотел добавить свои 2 цента.
Я настоятельно рекомендую использовать WCF; и используйте проект библиотеки служб WCF поверх веб-службы с поддержкой Silverlight. По сути, они оба одинаковы, но веб-служба с поддержкой Silverlight меняет привязку на базовую вместо ws *. Он также добавляет атрибут режима совместимости asp.net.
WCF обычно быстрее: см. «Сравнение производительности Windows Communication Foundation (WCF) с существующими технологиями распределенной связи» @ http: / /msdn.microsoft.com/en-us/library/bb310550.aspx
WCF инкапсулирует asmx, wse, msmq, корпоративные службы и удаленное взаимодействие.
Службы WCF могут быть включены и запускаться в iis, формах Windows и т. Д.
WCF не ограничивается использованием HTTP, но с минимальной конфигурацией можно также использовать tcp, именованные каналы и т. д.
сложные типы данных легче раскрыть и сериализовать.
WCF просто очень хорошо масштабируется. Кроме того, их можно использовать для включения рабочих процессов из WF.
Вероятно, нет неправильной технологии для использования, но похоже, что Microsoft собирается продвигаться вперед с WCF. Кроме того, намного проще написать одну базу кода, которая может быть представлена множеством различных способов с помощью всего лишь нескольких изменений конфигурации службы WCF.
Я рекомендую не использовать веб-службу с поддержкой Silverlight просто потому, что структура программирования немного лучше настроена с моделью WCF, но это, вероятно, вопрос личного мнения.
их можно использовать для включения рабочих процессов из WF.Вероятно, нет неправильной технологии, но похоже, что Microsoft собирается продвигаться вперед с WCF. Кроме того, намного проще написать одну базу кода, которая может быть представлена множеством разных способов с помощью всего лишь нескольких изменений конфигурации службы WCF.
Я рекомендую не использовать веб-службу с поддержкой Silverlight просто потому, что структура программирования немного лучше настроена с моделью WCF, но это, вероятно, вопрос личного мнения.
их можно использовать для включения рабочих процессов из WF.Вероятно, нет неправильной технологии, но похоже, что Microsoft собирается продвигаться вперед с WCF. Кроме того, намного проще написать одну базу кода, которая может быть представлена множеством разных способов с помощью всего лишь нескольких изменений конфигурации службы WCF.
Я рекомендую не использовать веб-службу с поддержкой Silverlight просто потому, что структура программирования немного лучше настроена с моделью WCF, но это, вероятно, вопрос личного мнения.