Клиентский доступ WCF с контрактами на сообщения - PullRequest
1 голос
/ 19 марта 2010

У меня есть веб-сервис, я добавил некоторый дополнительный класс, у которого есть контракт сообщений, и после этого он изменил способ доступа к некоторым методам (и я не добавил контракт сообщений в эти классы, это контракты данных), т.е. прежде чем мы сможем создать один объект для запроса и ответа (например, см. часть До), мы создаем отдельный объект для класса OrderStatusResponse. Но если вы видите сейчас After (мы должны создать отдельные объекты для запроса и ответа).

это побочный эффект включения "Всегда генерировать контракт сообщения?"

До

SmartConnect.Service1Client Client = 
    new SmartConnectClient.SmartConnect.Service1Client();
SmartConnect.OrderStatusResponse Status = 
    new SmartConnectClient.SmartConnect.OrderStatusResponse();
Status.UserID = "1234";
Status.Password = "abcd";
Status.SoftwareKey = "abc";
Status.OrderNumber = "1234";

Status = Client.GetOrderStatus(Status);
lbl_OS.Text = Status.Status.ToString();
lbl_RM.Text = Status.ReturnMessage.ToString();

* После 1011 *

SmartConnectRepublic.SmartConnectClient SmartClient = 
    new WCF_Client.SmartConnectRepublic.SmartConnectClient();
//SmartConnectRepublic.OrderStatusResponse Status = 
    new WCF_Client.SmartConnectRepublic.OrderStatusResponse();

WCF_Client.SmartConnectRepublic.GetOrderStatusRequest request = 
    new WCF_Client.SmartConnectRepublic.GetOrderStatusRequest();


request.status = new WCF_Client.SmartConnectRepublic.OrderStatusResponse();
request.status.OrderNumber = "1055055";
request.status.UserID = "1234";
request.status.Password = "dfsdfsd";
request.status.SoftwareKey = "sdfsdfsdfs";

WCF_Client.SmartConnectRepublic.GetOrderStatusResponse response = 
    new WCF_Client.SmartConnectRepublic.GetOrderStatusResponse();

response = SmartClient.GetOrderStatus(request);


lbl_Status.Text =  response.GetOrderStatusResult.Status;
lbl_RC.Text = response.GetOrderStatusResult.ReturnCode.ToString();
lbl_RM.Text = response.GetOrderStatusResult.ReturnCode.ToString();

1 Ответ

0 голосов
/ 19 марта 2010

Да, я подозреваю, что это разница с использованием контрактов сообщений. Похоже, ты понял это.

...