Example #1
0
        protected void UPS(Person p)
        {
            btn2Submit.Enabled      = true;
            lblAVS_Shipping.Visible = false;
            try
            {
                UPSAddressValidation.XAVService  xavSvc     = new UPSAddressValidation.XAVService();
                UPSAddressValidation.XAVRequest  xavRequest = new UPSAddressValidation.XAVRequest();
                UPSAddressValidation.UPSSecurity upss       = new UPSAddressValidation.UPSSecurity();
                UPSAddressValidation.UPSSecurityServiceAccessToken upssSvcAccessToken = new UPSAddressValidation.UPSSecurityServiceAccessToken();
                upssSvcAccessToken.AccessLicenseNumber = ConfigurationManager.AppSettings["UPSAccessLicenseNumber"];
                upss.ServiceAccessToken = upssSvcAccessToken;
                UPSAddressValidation.UPSSecurityUsernameToken upssUsrNameToken = new UPSAddressValidation.UPSSecurityUsernameToken();
                upssUsrNameToken.Username = ConfigurationManager.AppSettings["UPSUserName"];
                upssUsrNameToken.Password = ConfigurationManager.AppSettings["UPSPassword"];
                upss.UsernameToken        = upssUsrNameToken;
                xavSvc.UPSSecurityValue   = upss;
                UPSAddressValidation.RequestType request = new UPSAddressValidation.RequestType();

                //Below code contains dummy data for reference. Please update as required.
                String[] requestOption = { "1" };//***EAC 1 - Address Validation 2 - Address Classification 3 - Address Validation and Address Classification.
                request.RequestOption = requestOption;
                xavRequest.Request    = request;
                UPSAddressValidation.AddressKeyFormatType addressKeyFormat = new UPSAddressValidation.AddressKeyFormatType();
                String[] addressLine = { p.Addr1, p.Addr2, "" };
                addressKeyFormat.AddressLine   = addressLine;
                addressKeyFormat.ConsigneeName = "dummy";                  //***EAC seems unused

                addressKeyFormat.PoliticalDivision2              = p.City;
                addressKeyFormat.PoliticalDivision1              = p.State;
                addressKeyFormat.PostcodePrimaryLow              = p.Zip5;
                addressKeyFormat.PostcodeExtendedLow             = p.Zip4;
                addressKeyFormat.CountryCode                     = "US";
                xavRequest.AddressKeyFormat                      = addressKeyFormat;
                System.Net.ServicePointManager.CertificatePolicy = new PubEnt.UPS.TrustAllCertificatePolicy();
                UPSAddressValidation.XAVResponse xavResponse = xavSvc.ProcessXAV(xavRequest);

                if (xavResponse.ItemElementName != UPSAddressValidation.ItemChoiceType.ValidAddressIndicator)   //***EAC TODO: if (xavResponse.says_address_is bad  ValidAddressIndicator, AmbiguousAddressIndicator
                {
                    lblAVS_Shipping.Text    = "Address Not Found (UPS)";
                    btn2Submit.Enabled      = false;
                    lblAVS_Shipping.Visible = true;
                }
                else
                {
                    lblAVS_Shipping.Text    = "SUCCESS";
                    btn2Submit.Enabled      = true;
                    lblAVS_Shipping.Visible = false;
                }
            }

            catch (Exception ex)
            {
                //Write to log
                Microsoft.Practices.EnterpriseLibrary.Logging.LogEntry logEnt = new Microsoft.Practices.EnterpriseLibrary.Logging.LogEntry();
                logEnt.Message = "\r\n" + "UPS Address Verification error." + "\r\n" + "Source: " + ex.Source + "\r\n" + "Description: " + ex.Message + "\r\n" + "Stack Trace: " + ex.StackTrace;
                Microsoft.Practices.EnterpriseLibrary.Logging.Logger.Write(logEnt, "Logs");
            }
        }
Example #2
0
 /// <remarks/>
 public void ProcessXAVAsync(XAVRequest XAVRequest)
 {
     this.ProcessXAVAsync(XAVRequest, null);
 }