Использование сервиса Soap, получение в виде объекта, как писать в формате XML? - PullRequest
0 голосов
/ 23 ноября 2010

Я младший разработчик и пытаюсь написать приложение для использования веб-службы SOAP.

Используя веб-ссылку, я могу легко вызвать веб-метод веб-сервера Soap, но проблема в том, что сервер возвращает объект (я думаю, объект UBL XML). И я могу получить доступ к его отдельным элементам / узлам в виде объекта XML. Но если я хочу вывести его ответ на файл / файл XML, как я могу это сделать? Вероятно, тривиальная задача - вывести объект в виде объекта XML, но я не уверен, с чего начать. Я пробовал этот простой вызов ToString () возвращаемого объекта не будет работать. Нужно ли мне идти на уровень ниже, передавая HTTP POST отправленный заголовок и тело SOAP и интерпретируя / записывая поток ответов, чтобы получить ответ в виде текста XML?

Это код, который я использовал для получения отформатированного в UBL объекта XML:

/// <summary>
/// Used by supplier to check Order
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void btnRequestPO_Click(object sender, EventArgs e)
{
    string t_return;
    SupplierServices supplierServices = new SupplierServices();

    LoginDetails lgDetails = new LoginDetails();
    lgDetails.UserName = "user";
    lgDetails.Password = "password";
    supplierServices.LoginDetailsValue = lgDetails;

    RequestPurchaseOrder requestPO = new RequestPurchaseOrder();
    requestPO.SupplierCode = "1234";
    try
    {
        Order returned_order = supplierServices.SupplierRequestPO(requestPO);
        if (returned_order != null)
        {
            //Simply call the ToString wouldn't work, it will return a
            //class name instead.
            t_return = returned_order.ToString();
            MessageBox.Show(t_return);
        }
        else
            MessageBox.Show("Returned order is empty!");
    }
    catch (Exception ex)
    {
        String responseFromServer = ex.Message.ToString() + " ";
        if (ex!= null)
        {
          MessageBox.Show(responseFromServer);
        }
    }  

А вот ответ SOAP, который я должен получить:

HTTP/1.1 200 OK
Content-Type: text/xml; charset=utf-8
Content-Length: length

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
  <soap:Body>
    <SupplierRequestPOResponse xmlns="https://extranet.thewarehouse.co.nz/ElectronicCommerce/">
      <Order xmlns="urn:oasis:names:specification:ubl:schema:xsd:Order-2">
        <ID xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
        <CopyIndicator xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
        <IssueDate xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
        <Note xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
        <Note xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
        <DocumentCurrencyCode xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
        <CustomerReference xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
        <LineCountNumeric xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
        <ValidityPeriod xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonAggregateComponents-2">
          <StartDate xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
          <EndDate xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
          <Description xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
          <Description xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
        </ValidityPeriod>
        <ValidityPeriod xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonAggregateComponents-2">
          <StartDate xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
          <EndDate xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
          <Description xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
          <Description xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
        </ValidityPeriod>
        <BuyerCustomerParty xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonAggregateComponents-2">
          <CustomerAssignedAccountID xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
          <Party>
            <EndpointID xsi:nil="true" xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
            <PartyName xsi:nil="true" />
            <PartyName xsi:nil="true" />
            <PostalAddress xsi:nil="true" />
            <PhysicalLocation xsi:nil="true" />
            <PartyTaxScheme xsi:nil="true" />
            <PartyTaxScheme xsi:nil="true" />
          </Party>
          <BuyerContact>
            <ID xsi:nil="true" xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
            <Name xsi:nil="true" xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
            <Telephone xsi:nil="true" xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
            <Telefax xsi:nil="true" xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
          </BuyerContact>
        </BuyerCustomerParty>
        <SellerSupplierParty xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonAggregateComponents-2">
          <CustomerAssignedAccountID xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
          <Party>
            <EndpointID xsi:nil="true" xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
            <PartyName xsi:nil="true" />
            <PartyName xsi:nil="true" />
            <PostalAddress xsi:nil="true" />
            <PhysicalLocation xsi:nil="true" />
            <PartyTaxScheme xsi:nil="true" />
            <PartyTaxScheme xsi:nil="true" />
          </Party>
        </SellerSupplierParty>
        <ManufacturerParty xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonAggregateComponents-2">
          <EndpointID xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
          <PartyName>
            <Name xsi:nil="true" xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
          </PartyName>
          <PartyName>
            <Name xsi:nil="true" xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
          </PartyName>
          <PostalAddress>
            <StreetName xsi:nil="true" xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
            <AdditionalStreetName xsi:nil="true" xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
            <CitySubdivisionName xsi:nil="true" xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
            <CityName xsi:nil="true" xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
            <Country xsi:nil="true" />
          </PostalAddress>
          <PhysicalLocation>
            <Address xsi:nil="true" />
          </PhysicalLocation>
          <PartyTaxScheme>
            <RegistrationName xsi:nil="true" xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
            <CompanyID xsi:nil="true" xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
            <TaxScheme xsi:nil="true" />
          </PartyTaxScheme>
          <PartyTaxScheme>
            <RegistrationName xsi:nil="true" xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
            <CompanyID xsi:nil="true" xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
            <TaxScheme xsi:nil="true" />
          </PartyTaxScheme>
        </ManufacturerParty>
        <Delivery xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonAggregateComponents-2">
          <Quantity xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
          <TrackingID xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
          <DeliveryParty>
            <EndpointID xsi:nil="true" xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
            <PartyName xsi:nil="true" />
            <PartyName xsi:nil="true" />
            <PostalAddress xsi:nil="true" />
            <PhysicalLocation xsi:nil="true" />
            <PartyTaxScheme xsi:nil="true" />
            <PartyTaxScheme xsi:nil="true" />
          </DeliveryParty>
        </Delivery>
        <Delivery xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonAggregateComponents-2">
          <Quantity xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
          <TrackingID xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
          <DeliveryParty>
            <EndpointID xsi:nil="true" xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
            <PartyName xsi:nil="true" />
            <PartyName xsi:nil="true" />
            <PostalAddress xsi:nil="true" />
            <PhysicalLocation xsi:nil="true" />
            <PartyTaxScheme xsi:nil="true" />
            <PartyTaxScheme xsi:nil="true" />
          </DeliveryParty>
        </Delivery>
        <TransactionConditions xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonAggregateComponents-2">
          <ID xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
          <ActionCode xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
          <Description xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
          <Description xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
          <DocumentReference>
            <ID xsi:nil="true" xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
            <CopyIndicator xsi:nil="true" xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
            <UUID xsi:nil="true" xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
            <IssueDate xsi:nil="true" xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
            <DocumentTypeCode xsi:nil="true" xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
            <DocumentType xsi:nil="true" xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
            <XPath xsi:nil="true" xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
            <XPath xsi:nil="true" xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
            <Attachment xsi:nil="true" />
          </DocumentReference>
          <DocumentReference>
            <ID xsi:nil="true" xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
            <CopyIndicator xsi:nil="true" xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
            <UUID xsi:nil="true" xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
            <IssueDate xsi:nil="true" xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
            <DocumentTypeCode xsi:nil="true" xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
            <DocumentType xsi:nil="true" xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
            <XPath xsi:nil="true" xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
            <XPath xsi:nil="true" xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
            <Attachment xsi:nil="true" />
          </DocumentReference>
        </TransactionConditions>
        <TaxTotal xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonAggregateComponents-2">
          <TaxAmount xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
        </TaxTotal>
        <TaxTotal xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonAggregateComponents-2">
          <TaxAmount xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
        </TaxTotal>
        <AnticipatedMonetaryTotal xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonAggregateComponents-2">
          <LineExtensionAmount xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
          <AllowanceTotalAmount xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
          <PayableAmount xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
        </AnticipatedMonetaryTotal>
        <OrderLine xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonAggregateComponents-2">
          <Note xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
          <LineItem>
            <ID xsi:nil="true" xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
            <Note xsi:nil="true" xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
            <LineStatusCode xsi:nil="true" xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
            <Quantity xsi:nil="true" xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
            <LineExtensionAmount xsi:nil="true" xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
            <TotalTaxAmount xsi:nil="true" xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
            <MinimumQuantity xsi:nil="true" xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
            <MaximumBackorderQuantity xsi:nil="true" xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
            <PartialDeliveryIndicator xsi:nil="true" xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
            <BackOrderAllowedIndicator xsi:nil="true" xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
            <Delivery xsi:nil="true" />
            <Delivery xsi:nil="true" />
            <PricingReference xsi:nil="true" />
            <Price xsi:nil="true" />
            <Item xsi:nil="true" />
          </LineItem>
          <BuyerProposedSubstituteLineItem>
            <ID xsi:nil="true" xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
            <Note xsi:nil="true" xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
            <LineStatusCode xsi:nil="true" xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
            <Quantity xsi:nil="true" xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
            <LineExtensionAmount xsi:nil="true" xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
            <TotalTaxAmount xsi:nil="true" xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
            <MinimumQuantity xsi:nil="true" xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
            <MaximumBackorderQuantity xsi:nil="true" xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
            <PartialDeliveryIndicator xsi:nil="true" xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
            <BackOrderAllowedIndicator xsi:nil="true" xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
            <Delivery xsi:nil="true" />
            <Delivery xsi:nil="true" />
            <PricingReference xsi:nil="true" />
            <Price xsi:nil="true" />
            <Item xsi:nil="true" />
          </BuyerProposedSubstituteLineItem>
          <BuyerProposedSubstituteLineItem>
            <ID xsi:nil="true" xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
            <Note xsi:nil="true" xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
            <LineStatusCode xsi:nil="true" xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
            <Quantity xsi:nil="true" xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
            <LineExtensionAmount xsi:nil="true" xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
            <TotalTaxAmount xsi:nil="true" xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
            <MinimumQuantity xsi:nil="true" xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
            <MaximumBackorderQuantity xsi:nil="true" xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
            <PartialDeliveryIndicator xsi:nil="true" xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
            <BackOrderAllowedIndicator xsi:nil="true" xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
            <Delivery xsi:nil="true" />
            <Delivery xsi:nil="true" />
            <PricingReference xsi:nil="true" />
            <Price xsi:nil="true" />
            <Item xsi:nil="true" />
          </BuyerProposedSubstituteLineItem>
        </OrderLine>
        <OrderLine xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonAggregateComponents-2">
          <Note xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
          <LineItem>
            <ID xsi:nil="true" xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
            <Note xsi:nil="true" xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
            <LineStatusCode xsi:nil="true" xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
            <Quantity xsi:nil="true" xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
            <LineExtensionAmount xsi:nil="true" xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
            <TotalTaxAmount xsi:nil="true" xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
            <MinimumQuantity xsi:nil="true" xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
            <MaximumBackorderQuantity xsi:nil="true" xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
            <PartialDeliveryIndicator xsi:nil="true" xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
            <BackOrderAllowedIndicator xsi:nil="true" xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
            <Delivery xsi:nil="true" />
            <Delivery xsi:nil="true" />
            <PricingReference xsi:nil="true" />
            <Price xsi:nil="true" />
            <Item xsi:nil="true" />
          </LineItem>
          <BuyerProposedSubstituteLineItem>
            <ID xsi:nil="true" xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
            <Note xsi:nil="true" xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
            <LineStatusCode xsi:nil="true" xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
            <Quantity xsi:nil="true" xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
            <LineExtensionAmount xsi:nil="true" xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
            <TotalTaxAmount xsi:nil="true" xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
            <MinimumQuantity xsi:nil="true" xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
            <MaximumBackorderQuantity xsi:nil="true" xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
            <PartialDeliveryIndicator xsi:nil="true" xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
            <BackOrderAllowedIndicator xsi:nil="true" xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
            <Delivery xsi:nil="true" />
            <Delivery xsi:nil="true" />
            <PricingReference xsi:nil="true" />
            <Price xsi:nil="true" />
            <Item xsi:nil="true" />
          </BuyerProposedSubstituteLineItem>
          <BuyerProposedSubstituteLineItem>
            <ID xsi:nil="true" xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
            <Note xsi:nil="true" xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
            <LineStatusCode xsi:nil="true" xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
            <Quantity xsi:nil="true" xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
            <LineExtensionAmount xsi:nil="true" xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
            <TotalTaxAmount xsi:nil="true" xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
            <MinimumQuantity xsi:nil="true" xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
            <MaximumBackorderQuantity xsi:nil="true" xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
            <PartialDeliveryIndicator xsi:nil="true" xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
            <BackOrderAllowedIndicator xsi:nil="true" xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" />
            <Delivery xsi:nil="true" />
            <Delivery xsi:nil="true" />
            <PricingReference xsi:nil="true" />
            <Price xsi:nil="true" />
            <Item xsi:nil="true" />
          </BuyerProposedSubstituteLineItem>
        </OrderLine>
      </Order>
    </SupplierRequestPOResponse>
  </soap:Body>
</soap:Envelope>

Ответы [ 2 ]

0 голосов
/ 24 ноября 2010

Марк Авениус предоставил хороший пример того, как преобразовать любой объект в XML. Если это все, что вы пытаетесь сделать, его ответ идеально подойдет вам.

Однако звучит так, как будто вы пытаетесь проверить сам ответ SOAP - XmlSerializer не позволит вам сделать это. Вместо этого он преобразует объект в собственное представление о том, как этот объект должен выглядеть в XML, а не в том, что вы получили по сети.

Если вы действительно пытаетесь проверить ответ SOAP, я бы рекомендовал использовать замечательный инструмент Fiddler . Это позволит вам вручную создавать веб-запросы любого типа, включая SOAP, и анализировать точные полученные ответы. Это неоценимо для веб-разработки .NET.

0 голосов
/ 24 ноября 2010

Вы можете использовать XmlSerializer:

public static string Serialize(object input)
{
    if (input == null)
        return null;

    System.Xml.Serialization.XmlSerializer ser = new System.Xml.Serialization.XmlSerializer(input.GetType());

    using (MemoryStream ms = new MemoryStream())
    using (StreamReader sr = new StreamReader(ms))
    {
        ser.Serialize(ms, input);
        ms.Seek(0, 0);
        return sr.ReadToEnd();
    }
}

и передать свой returned_order следующим образом:

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