Создание сервисного уровня .NET, который обслуживает содержимое JSON: WCF или MVC как JSON? - PullRequest
1 голос
/ 19 декабря 2011

Привет и спасибо за поиск!

Фон

Я разрабатываю новое приложение с использованием .NET4 w / C #, которое будет упаковано для / в Azure и запущено в облаке.

Одной из основных функций этого приложения будет прослушивание запросов, поступающих из других междоменных приложений по всему Интернету, аутентификация запроса (метод выполнения этого еще не определен), а затем ответ с данными в форма объекта JSON.

Это приложение будет обслуживать данные на основе подписки / API, и у меня не будет никакого контроля или дополнительных знаний о том, откуда будут поступать будущие запросы.

В прошлом я создавал проект MVC3 в своем решении в качестве «сервисного» слоя, который просто прослушивал определенные URL-адреса (например, «mydomain.com/json») для запросов данных от того же домен. В ответ на запрос я бы взял некоторые данные из SQL (на самом деле сущности), сериализовал их в JSON и затем вернул их как return Content(foo,application/json) через результат действия. Это сработало БОЛЬШОЙ.

JSON, скорее всего, всегда будет запрашиваться через ajax, работающий на клиентской машине, поэтому меня не очень беспокоит блокировка потоков на сервере.

Обратите внимание, я очень мало знаю о сервисных проектах WCF и очень мало о Azure.

Вопрос

Хотя я очень доволен тем, как мой шаблон службы MVC JSON работает в других приложениях, есть ли серьезные причины, по которым я НЕ должен это делать? Основные причины, по которым я должен использовать вместо этого WCF?

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

Я с нетерпением жду совета от блестящих умов о переполнении стека по этому вопросу!

Спасибо

Мэтт

1 Ответ

1 голос
/ 10 января 2012

Без аргументов против использования методов MVC, я буду придерживаться их. Я обнаружил, что .NET MVC3 чрезвычайно гибок в качестве уровня брокерских услуг, особенно при использовании JsonFx в качестве сериализатора JSON, обеспечивающего недорогую передачу данных между уровнями.

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