Hakkımda

24 Eylül 2024

Aras Kargo Entegrasyon Çalışma Örneği C#

 Merhaba dostlar,

Bu yazımda sizlere Aras Kargo'nun entegrasyon uygulaması örneğini göstereceğim,

using System;

using System.Data;

using System.Threading.Tasks;

using System.Windows.Forms;

using ArasKargoEntegrasyonServisi.AraskargoService;  // Servis referansı

using System.ServiceModel;  // CommunicationException için gerekli


namespace ArasKargoEntegrasyonServisi

{

    public partial class Form1 : Form

    {

        public Form1()

        {

            InitializeComponent();

        }


        // Button tıklama olayı: Veriyi servisten çeker ve DataGridView'e ekler

        private async void btnLoadData_Click(object sender, EventArgs e)

        {

            string loginInfo = @"<LoginInfo>

                <UserName>kullanıcı_adı</UserName>

                <Password>sifre</Password>

                <CustomerCode>musterikodu</CustomerCode>

            </LoginInfo>";


            string queryInfo = @"<QueryInfo>

                <QueryType>39</QueryType>

                <TrackingNumber>takip_no</TrackingNumber>

            </QueryInfo>";


            // Servisten veriyi getir

            string result = await GetShipmentDetailsAsync(loginInfo, queryInfo);


            if (!string.IsNullOrEmpty(result))

            {

                // Gelen veriyi bir DataSet'e veya DataTable'a aktar

                DataSet dataSet = new DataSet();

                dataSet.ReadXml(new System.IO.StringReader(result));


                // DataGridView'e ekle

                if (dataSet.Tables.Count > 0)

                {

                    dataGridView1.DataSource = dataSet.Tables[0];

                }

                else

                {

                    MessageBox.Show("Gelen veri boş.");

                }

            }

            else

            {

                MessageBox.Show("Sonuç alınamadı.");

            }

        }


        // Servis çağrısı yapan fonksiyon

        public static async Task<string> GetShipmentDetailsAsync(string loginInfo, string queryInfo)

        {

            var client = new ArasCargoIntegrationServiceClient();

            try

            {

                var response = await client.GetQueryXMLAsync(loginInfo, queryInfo);

                return response;

            }

            catch (Exception ex)

            {

                MessageBox.Show("Hata: " + ex.Message);

                return null;

            }

            finally

            {

                try

                {

                    client.Close();

                }

                catch (CommunicationException)

                {

                    client.Abort();

                }

                catch (TimeoutException)

                {

                    client.Abort();

                }

                catch (Exception)

                {

                    client.Abort();

                    throw;

                }

            }

        }

    }

}

Projeyi derlemeden önce web servis linkini servislere eklemeyi unutmayın.

Hiç yorum yok:

Yorum Gönder

Merhaba Arkadaşlar;
Lütfen yorumda bulunurken saygı ve sevgi çerçevesinden yorumda bulununuz. Lütfen emeğe saygı gösteriniz.

PumpKIN açık kaynaklı, tamamen işlevsel ve ücretsiz bir TFTP sunucusu ve TFTP istemcisi

Merhaba Dostlar, Bu uygulamayı uzun zamandır arıyordum, bir çok web site linkleri silmiş, bu uygulama ne işe yarıyor ondan bahsedeceğim,   P...