Текущая цель моего проекта - создать единое окно для извлечения всех данных, исходящих от службы или БД. Итак, мы создали решение WCF с использованием шаблона репозитория, который предоставляет методы вызывающим клиентам и внутренне вызывает либо сторонние службы, либо БД для получения данных.
Когда мы получаем данные из стороннего API, данные возвращаются в прокси-классе, и нам приходится иметь дело с БОЛЬШИМ объектом, который имеет много вложенных классов и множество свойств. В этом сценарии, как описано выше, что лучше всего сделать:
- Поскольку эти прокси-классы велики для моей ситуации, Используйте прокси-классы по всему проекту и возвращайте прокси-объект.
Создайте локальный бизнес-объект, проанализируйте сторонний бизнес-объект на локальный объект и верните мой локальный объект:
public class ThirdPartyRepository { public MyData GetData() { //Call third party service method ThirdPartyProxyClass proxyClass = ThirdPartyServiceReference.GetData(); //Parse object to my object MyData data = new MyData() { //Parse properties ID = proxyClass.ID }; return data; } }