none
2 forech döngüsünde aynı olanları karşılaştırma ve eleme RRS feed

  • Soru

  • Merhaba,

    Aşağıdaki kod ile sipariş listesi çekmeye çalışıyorum ancak. aynı sipariş numarası kaydedilen xml de var ise onu es geçip olmayanları kaydededebilmek için nasıl bir düzenleme yapmam gerekir acaba? linq ile yapılacak sanırım ama nasıl bir kurgu ile iki forech karşılaştırılabilir onu bilemedim:(

    Yardımlarınız için şimdiden tşekkürler...

      JObject obj2 = JObject.Parse(response.Content);
                var barcode = JsonConvert.DeserializeObject<RootObject>(response.Content).content;
                TXTTOPLAMSİPARİS.Text = obj.totalElements.ToString();
                listViewSİPARİSLER.Items.Clear();
                    foreach (var cat in barcode)
                {
                    foreach (var subcat in cat.lines)
                    {
             
                            string yol = Application.StartupPath + "\\SİPARİSLER\\SİPARİSLER.xml";
    
                            bool durum = File.Exists(yol);
                  
                            if (durum == false)
                            {
                                //İLK DEFA XML DOSYASI OLUŞTURUYOR
    				SİPARİSXMLKAYDET("TRENDYOL", cat.orderNumber, subcat.merchantSku);
                            }
                            if (durum == true)
                            {
                            XmlDocument xmldoc = new XmlDocument();
                            xmldoc.Load(Application.StartupPath + "\\SİPARİSLER\\SİPARİSLER.xml");  // use the .Load() method - not .LoadXml() !!
                            XmlNodeList productsNodes = xmldoc.SelectNodes("/SİPARİSLER/SİPARİS");
                            foreach (XmlNode node in productsNodes)
                            {
    
                                string SİPARİSNO = node["SİPARİSNO"].InnerText;
                               	string  STOKKODU= node["STOKKODU"].InnerText;
    
              
                                if (SİPARİSNO == cat.orderNumber )
                                {
                                    break;
                                    
                             
                                }
                                if (SİPARİSNO != cat.orderNumber)
                                {
                                    //?????????????????????????????XML GÜNCELLEME YAPMAK İSTİYORUZ
                                    SİPARİSXMLGUNCELLE("TRENDYOL", cat.orderNumber, subcat.merchantSku);
                                }
                            }
    
    
                        }
                        }


    koksal_tuna@hotmail.com

    16 Kasım 2019 Cumartesi 17:28

Tüm Yanıtlar

  • Öncelikle XmlDocument yerine XDocument (Linq2Xml) kullansanız daha rahat olur.

    Sorunuza gelince;

    var yeniListe = gelenListe.Except(eskiListe);

    gelenListede olup, eski listede olmayanları verecektir.


    e-mail: onay[nokta]yalciner[at]hotmail[nokta]com


    16 Kasım 2019 Cumartesi 20:33
    Moderatör
  • Merhaba,

    Aslında bunu kullanıcağımı biliyorum ama nerede nasıl kullanıp olmayan siparişleri xmle ekliyeceğimi bir türlü bulamadım biraz yönlendirme yapabilir misiniz acaba?

    Direkt list döndürüyor sanırım ama ben dönen list içinden  güncelleme yapacağım için bu değerlere nasıl ulaşım sağlayabilirim?

    SİPARİSXMLGUNCELLE("TRENDYOL", cat.orderNumber, subcat.merchantSku);

    koksal_tuna@hotmail.com

    17 Kasım 2019 Pazar 08:21