private void SetUserInfo(ConfermaRequest result)
 {
     result.UserInfo = new UserInfo
     {
         Canale    = _ambiente.sendersystem,
         Cliente   = _ambiente.customerid,
         IdCdC     = "",
         UserId    = _ambiente.smuser,
         IdCliente = _ambiente.customerid
     };
 }
        public NpceOperationResult Execute()
        {
            var ce = new ComunicazioniElettroniche.Common.DataContracts.CE();

            ce.Header             = GetHeaders(_ambiente);
            ce.Header.GUIDMessage = Guid.NewGuid().ToString();

            ConfermaRequest confermaRequest = new ConfermaRequest
            {
                IdOrdine             = _visura.IdOrdine,
                PaymentDate          = System.DateTime.Now,
                PaymentDateSpecified = true,
                PaymentType          = new PaymentType {
                    PostPayment = true, PostPaymentSpecified = true, TypeId = "6"
                }
            };

            SetUserInfo(confermaRequest);

            ce.Body = SerializationUtility.SerializeToXmlElement(confermaRequest);

            ConfermaResponse confermaResponse = null;

            using (WsCEClient client = new WsCEClient())
            {
                client.Endpoint.Address = new System.ServiceModel.EndpointAddress(_ambiente.VolUri);
                client.SubmitRequest(ref ce);
                try
                {
                    confermaResponse = SerializationUtility.Deserialize <ConfermaResponse>(ce.Body);
                }
                catch (Exception ex)
                {
                    throw (ex);
                }
            }

            return(CreateResult(NpceOperation.Conferma, confermaResponse.Result.ResType == TResultResType.I ? "0" : "99", "Invio Ok", confermaResponse.IdOrdine, null, null));
        }