Quantcast
Channel: BTSoru.com - Bilisim ve Yazilim Teknolojileri Soru/Cevap Platformu - latest questions
Viewing all articles
Browse latest Browse all 4270

System.OutOfMemoryException' hatası

$
0
0

Merhaba arkadaşlar. XML dökümanı oluşturan bi metot yazdım ancak metot çalıştıktan sonra catch e düşüyo ve

Exception of type 'System.OutOfMemoryException' was thrown. hatası döndürüyor . Yardımcı olursanız sevinirim

Metot bu:

        var sb = new StringBuilder();
        var stringWriter = new StringWriter(sb);
        var xmlWriter = new XmlTextWriter(stringWriter);
        xmlWriter.WriteStartDocument();
        xmlWriter.WriteStartElement("Urunler");
        ISettingService settingService = EngineContext.Current.Resolve<ISettingService>();

        foreach (var product in products)
        {
            var productCategories = _categoryService.GetProductCategoriesByProductId(product.Id).FirstOrDefault();
            var productManufacturers = _manufacturerService.GetProductManufacturersByProductId(product.Id).FirstOrDefault();
            var productVariant = _productService.GetProductVariantsByProductId(product.Id);

            IList<Core.Domain.Media.Picture> pictures = new List<Core.Domain.Media.Picture>();

            foreach (var variant in productVariant)
            {
                pictures = variant.GetProductVariantPictures(_pictureService);

                xmlWriter.WriteStartElement("Urun");

                if (product.Id.ToString() != null)
                {
                    xmlWriter.WriteElementString("urun_id", product.Id.ToString());
                }
                else
                {
                    xmlWriter.WriteElementString("urun_id","");
                }

                if(variant.Name != null )
                {
                   xmlWriter.WriteElementString("baslik",variant.Name);
                }
                else
                {
                   xmlWriter.WriteElementString("baslik", product.Name);
                }

                if (productCategories != null)
                {
                    xmlWriter.WriteElementString("kategori", productCategories.Category.Name);
                }

                if (productManufacturers != null)
                {
                    xmlWriter.WriteElementString("marka", productManufacturers.Manufacturer.Name);
                }

                else
                {
                    xmlWriter.WriteElementString("marka", "");
                }

                if (variant.Currency == null)
                {
                    xmlWriter.WriteElementString("birim", "TRY");
                }

                else
                {
                    xmlWriter.WriteElementString("birim", variant.Currency.CurrencyCode);
                }

                if (pictures != null)
                {
                    xmlWriter.WriteElementString("urun_url", null, _pictureService.GetPictureUrl(pictures.FirstOrDefault()));
                }
                else
                {
                    xmlWriter.WriteElementString("urun_url","");
                }

                    var url = string.Format("{0}p/{1}/{2}", _webHelper.GetStoreLocation(false), product.Id, product.GetSeName());
                    xmlWriter.WriteStartElement("linkhref");
                    xmlWriter.WriteCData(url.ToString());
                    xmlWriter.WriteEndElement();

                if(variant.CurrencyId  == null )
                {
                    xmlWriter.WriteElementString("fiyat", variant.Price.ToString());
                }

                else if (variant.CurrencyId != null && variant.CurrencyId.ToString() == settingService.GetSettingByKey<string>("currencysettings.primarystorecurrencyid"))
                {
                    xmlWriter.WriteElementString("fiyat", variant.Price.ToString());
                }

                else
                {
                    xmlWriter.WriteElementString("fiyat", variant.CurrencyPrice.ToString());
                }

                xmlWriter.WriteEndElement();
            }

        }

        xmlWriter.WriteEndElement();
        xmlWriter.WriteEndDocument();
        xmlWriter.Close();

        return stringWriter.ToString();

Viewing all articles
Browse latest Browse all 4270

Trending Articles


Mide ağrısı için


Alessandra Torre - Karanlık Yalanlar


Şekilli süslü hazır floodlar


Flatcast Güneş ve Ay Flood Şekilleri


Gone Are the Days (2018) (ENG) (1080p)


Yildiz yükseltme


yc82


!!!!!!!!!! Amın !!!!!!!!!


Celp At Nalı (Sahih Tılsım)


SCCM 2012 Client Installation issue