Использование SOAP веб-сервисов в качестве модели в ASP.NET MVC - PullRequest
1 голос
/ 13 декабря 2010

Я занимаюсь разработкой веб-приложения ASP.NET (C # .NET 4) в сценарии, где мне нужно использовать WCF SOAP Services (VB.NET 4), предоставленный другой группой разработчиков, в качестве модели.

Сервисы размещаются на IIS с использованием AppFabric. Реализация WCF создана для поддержки следующего сценария:

Уровень службы общих данных, который не зависит от языка / платформы. Требование также заключается в том, что сервисы должны обеспечивать «черный ящик», когда внешняя разработка передается сторонним разработчикам. Сервисы WCF SOAP используются для предоставления общего веб-API. Потребителями услуг являются как веб-приложения, так и настольное программное обеспечение, как внутреннее, так и внешнее.

Мой вопрос касается моей текущей архитектуры веб-приложений. Приложение разработано с использованием ASP.NET MVC 2 и jQuery UI. Из того, что я прочитал, кажется, что использование WCF SOAP Services в качестве модели - это нормально. Мой план также заключается в использовании ViewModels и AutoMapper на основе этого поста:

Использование объекта веб-службы SOAP в качестве модели в ASP.NET MVC 2

Какие есть подводные камни, если таковые имеются?
Как мне развивать связь со службами? Есть ли накладные расходы в плане связи с такой архитектурой? Любые лучшие практики?

(На данном этапе реинжиниринг уровня обслуживания в OData невозможен)

1 Ответ

1 голос
/ 13 декабря 2010

Если вы думаете о своих веб-сервисах как о «удаленной базе данных», вы можете просто следовать тем же правилам, что и при разработке приложения MVC для базы данных. Но будьте готовы к гораздо большим проблемам с отключением, чем в противном случае.

Я бы предложил вам создать свою модель, чтобы обернуть вызовы веб-службам и предоставить любую логику обработки ошибок, которая вам понадобится (что, вероятно, будет много, если веб-службы будут удалены). WAN не гарантируется, и икота не является чем-то необычным.

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