Я планирую проект, который будет состоять из приложения Windows Server, запрограммированного в .Net/C# и клиентах, запрограммированных в Silverlight/C#, Windows Forms/C# и MacClient запрограммированный в какао. Мой вопрос: какая технология Webservice будет наилучшей для общения между Клиентами и сервером и проще всего программировать во всех этих технологиях? У меня нет опыта работы в Web-сервисах, и поскольку Time работает, я надеюсь получить некоторые мнения разработчиков, которые работали в таком разнородном проекте.Ищите лучшую практику относительно веб-сервисов между .Net и Cocoa
ответ
На заднем конце вы обязательно захотите запустить Windows Communication Foundation, используя WSHttpBinding или BasicHttpBinding в зависимости от ваших потребностей.
Это упростит работу с клиентами Windows Forms и Silverlight.
Кроме того, поскольку использование WCF с этими привязками соответствует установленным стандартам, вы должны иметь доступ к службам практически из любой другой среды - должны быть инструменты, которые вы можете просто указать на конечную точку метаданных, и она будет генерировать прокси для тебя.
Другой вариант - use WCF to create a REST service (с вероятностью кодирования JSON). WCF немного помогает вам здесь, но если это дизайн, который вы хотите использовать, то вам также захочется взглянуть на ASP.NET MVC на заднем конце, так как это делает создание такого рода услуг очень простым ,
Однако при использовании служб REST нет описания службы через нечто вроде WSDL, поэтому вам придется создавать прокси-серверы для вызова ваших услуг вручную (по крайней мере, в средах вне .NET).
Текущая технология, используемая для разработки веб-сервисов на .NET, - WCF. Для взаимодействия с клиентами, не являющимися клиентами .NET, вы должны использовать конечную точку basicHttpBinding. Вы даже можете предоставить несколько конечных точек с различными привязками, например, выставить совместимую конечную точку для клиентов не .NET и некоторую быструю привязку для клиентов .NET. Вот nice article on MSDN, охватывающий исполнение различных привязок. С учетом этих ключевых слов вы можете проверить the tutorials.
- 1. Ищите лучшую практику для обработки локальных и серверных данных
- 2. Ищите лучшую практику при обработке ошибок в TSQL-скриптах
- 3. Ищите лучшую практику для фильтрации предложений от Completion Suggestester
- 4. Ищите лучшую практику/Самый эффективный большой SQL UPDATE/INSERT
- 5. Ищите лучшую практику для фильтрации вывода модуля в DotNetNuke
- 6. Ищите лучшую практику для обновления активной записи Столбец
- 7. Ищите лучшую практику для «использования сети» в C#
- 8. Ищите лучшую практику: связь между двумя приложениями для файлообменников и загрузкой
- 9. Ищите лучшую инициализацию словаря
- 10. bson.json_util datetime кодирует и декодирует лучшую практику
- 11. LinqToSql объявляет и внедряет лучшую практику DataContext?
- 12. Ищите лучшую структуру сложения if
- 13. Какая проверка на лучшую практику для Cassandra?
- 14. Помогите распечатать штрих-код. Ищете лучшую практику
- 15. материализовать лучшую практику VALIDATE пустое поле
- 16. Ищите лучшую практику для написания приложения для связи с последовательным устройством
- 17. Ищите лучшую структуру для этой системы инвентаризации
- 18. Можете ли вы предложить лучшую практику для программирования сокетов p2p?
- 19. Скрывает/показывает divs лучшую практику в отзывчивом дизайне?
- 20. Django related_name, назвав лучшую практику в случае множественных отношений
- 21. Посты по заказу на лучшую практику по опубликованной дате
- 22. Будущее доказательство: снимает ли конверт JSON текущую лучшую практику?
- 23. Имеет ли несколько классов в элементе хорошую (или лучшую) практику?
- 24. Что такое Дарт, проверяющий идиому или лучшую практику?
- 25. Ищите лучшую формулу для ранжирования активности пользователя в SQL
- 26. . NET FileSystemWatcher для Cocoa
- 27. Ищете лучшую практику для написания SQL в Oracle, когда один и тот же подзапрос используется дважды
- 28. Android несколько вебсервисов требуют одного действия
- 29. Относительно .NET-приложения
- 30. Ищете лучшую сквозную связь с Flex, .NET и СУБД