şöyle bir xml yapım var ve bu xml'den çoğu verileri çekiyorum, fakat
etiketleri var, verileri çekmek istediğimde şöyle bir hata alıyorum:
anaurun.urunaciklama = item.detay_ozellik.tostring(); yazdığımda
Beklenmeyen düğüm türü: Element. ReadElementString yöntemi, yalnızca basit veya boş içeriğe sahip öğelerde çağrılabilir. Satır 750, konum 10.
XML
XML
Ergonomik güneş vizörü kontrol sistemi
Çizilmelere karşı dayanıklı ve 2.2mm kalınlığında ekstra esnek vizör.
Ultraviole ışıklarına karşı koruyan güneş vizörü.
Eldiven ile beraber kullanmak için optimize edilmiş havalandırma sistemi.
Class
Class
{
[XmlRoot(ElementName = "grup")]
public class Grup
{
[XmlElement(ElementName = "grup_kod")]
public string Grup_kod { get; set; }
[XmlElement(ElementName = "grup_tanim")]
public string Grup_tanim { get; set; }
[XmlElement(ElementName = "kayit_no")]
public string Kayit_no { get; set; }
[XmlElement(ElementName = "ust_grup_kod")]
public string Ust_grup_kod { get; set; }
}
[XmlRoot(ElementName = "urun_gruplari")]
public class Urun_gruplari
{
[XmlElement(ElementName = "grup")]
public List
}
[XmlRoot(ElementName = "urun")]
public class Urun
{
[XmlElement(ElementName = "urun_kod")]
public string Urun_kod { get; set; }
[XmlElement(ElementName = "kayit_no")]
public int Kayit_no { get; set; }
[XmlElement(ElementName = "urun_tanim")]
public string Urun_tanim { get; set; }
[XmlElement(ElementName = "grup_kod")]
public string Grup_kod { get; set; }
[XmlElement(ElementName = "marka")]
public string Marka { get; set; }
[XmlElement(ElementName = "stok_durum")]
public string Stok_durum { get; set; }
[XmlElement(ElementName = "fiyat_sonk")]
public string Fiyat_sonk { get; set; }
[XmlElement(ElementName = "fiyat_bayi")]
public string Fiyat_bayi { get; set; }
[XmlElement(ElementName = "doviz")]
public string Doviz { get; set; }
[XmlElement(ElementName = "kdv")]
public string Kdv { get; set; }
[XmlElement(ElementName = "kdv_tip")]
public string Kdv_tip { get; set; }
[XmlElement(ElementName = "birim")]
public string Birim { get; set; }
[XmlElement(ElementName = "resim_k")]
public string Resim_k { get; set; }
[XmlElement(ElementName = "resim_b")]
public string Resim_b { get; set; }
[XmlElement(ElementName = "temel_ozellik")]
public string Temel_ozellik { get; set; }
[XmlElement(ElementName = "desi")]
public string Desi { get; set; }
[XmlElement(ElementName = "resim_eb")]
public string Resim_eb { get; set; }
[XmlElement(ElementName = "detay_ozellik")]
public string Detay_ozellik { get; set; }
[XmlElement(ElementName = "opsiyon_genel")]
public Opsiyon_genel Opsiyon_genel { get; set; }
}
[XmlRoot(ElementName = "secenek")]
public class Secenek
{
[XmlElement(ElementName = "sec_kod1")]
public string Sec_kod1 { get; set; }
[XmlElement(ElementName = "sec_tanim1")]
public string Sec_tanim1 { get; set; }
[XmlElement(ElementName = "sec_kod2")]
public string Sec_kod2 { get; set; }
[XmlElement(ElementName = "sec_tanim2")]
public string Sec_tanim2 { get; set; }
[XmlElement(ElementName = "sec_miktar")]
public string Sec_miktar { get; set; }
[XmlElement(ElementName = "sec_fiyat_tip")]
public string Sec_fiyat_tip { get; set; }
[XmlElement(ElementName = "sec_fiyat_fark")]
public string Sec_fiyat_fark { get; set; }
[XmlElement(ElementName = "sec_barkod")]
public string Sec_barkod { get; set; }
}
[XmlRoot(ElementName = "secenekler")]
public class Secenekler
{
[XmlElement(ElementName = "secenek")]
public List
}
[XmlRoot(ElementName = "opsiyon_genel")]
public class Opsiyon_genel
{
[XmlElement(ElementName = "opsiyon1_kod")]
public string Opsiyon1_kod { get; set; }
[XmlElement(ElementName = "opsiyon1_tanim")]
public string Opsiyon1_tanim { get; set; }
[XmlElement(ElementName = "opsiyon2_kod")]
public string Opsiyon2_kod { get; set; }
[XmlElement(ElementName = "opsiyon2_tanim")]
public string Opsiyon2_tanim { get; set; }
[XmlElement(ElementName = "secenekler")]
public Secenekler Secenekler { get; set; }
}
[XmlRoot(ElementName = "urunler")]
public class Urunler
{
[XmlElement(ElementName = "urun")]
public List
}
[XmlRoot(ElementName = "katalog")]
public class Katalog
{
[XmlElement(ElementName = "urun_gruplari")]
public Urun_gruplari Urun_gruplari { get; set; }
[XmlElement(ElementName = "urunler")]
public Urunler Urunler { get; set; }
}
.cs
XmlDocument xmlVerisi = new XmlDocument();
xmlVerisi.Load("http://www.tcmb.gov.tr/kurlar/today.xml");
decimal Euro = Convert.ToDecimal(xmlVerisi.SelectSingleNode(string.Format("Tarih_Date/Currency[@Kod='{0}']/ForexSelling", "EUR")).InnerText.Replace('.', ','));
double eu = Convert.ToDouble(Euro);
XmlSerializer seri = new XmlSerializer(typeof(Katalog));
Katalog MyKatalog = (Katalog)seri.Deserialize(new XmlTextReader(Server.MapPath("XXX.xml")));
foreach (Grup gr in MyKatalog.Urun_gruplari.Grup)
{
Kategoriler yeni = new Kategoriler();
var ara = from i in db.Kategoriler
where i.Grup_Ad == gr.Ust_grup_kod
select i.KategoriId;
foreach (var item in ara)
{
yeni.KategoriAdi = gr.Grup_tanim;
yeni.UstKategoriId = Convert.ToInt32(item);
yeni.XmlAdi = "x";
yeni.Xmlid = Convert.ToInt32(gr.Grup_kod);
}
db.Kategoriler.Add(yeni);
db.SaveChanges();
}
foreach (Urun item in MyKatalog.Urunler.Urun)
{
var varmı = db.Markalar.Any(u => u.MarkaAdi == item.Marka);
if (varmı == true)
{
continue;
}
else
{
Markalar marka = new Markalar();
marka.MarkaAdi = item.Marka;
marka.XmlAdi = "x";
db.Markalar.Add(marka);
db.SaveChanges();
}
}
foreach (Urun item in MyKatalog.Urunler.Urun)
{
Ana_Urun anaurun = new Ana_Urun();
Kategoriler kat = new Kategoriler();
var urunekle = from i in db.Kategoriler.ToList()
where i.Xmlid == Convert.ToInt32(item.Grup_kod)
select i.KategoriId;
foreach (var U in urunekle)
{
bool var = db.Ana_Urun.Any(u => u.KayitNo == item.Kayit_no);
if (var == true)
{
Label1.Text = "Ürünler Güncellendi";
}
if (var == false)
{
if (item.Opsiyon_genel != null)
{
anaurun.Varyant = 1;
}
else
{
anaurun.Varyant = 0;
}
var katisim = db.Kategoriler.FirstOrDefault(x => x.KategoriId == U).KategoriAdi;
bool doviz = item.Doviz == "EURO";
if (doviz == true)
{
double fiyat = Convert.ToDouble(item.Fiyat_sonk);
double carp = fiyat * eu;
anaurun.KategoriId = U;
anaurun.KategoriAdi = katisim;
anaurun.UrunAdi = item.Urun_tanim;
anaurun.UrunMarka = item.Marka;
anaurun.UrunStokDurumu = Convert.ToInt32(item.Stok_durum);
anaurun.Fiyat = Convert.ToDecimal(carp);
anaurun.BayiFiyat = Convert.ToDecimal(carp);
anaurun.UrunResmi1 = item.Resim_b;
anaurun.UrunResmi2 = item.Resim_eb;
anaurun.UrunAciklama = item.Temel_ozellik;
anaurun.AltId = 0;
anaurun.UrunVitrin = 1;
anaurun.indirim = 1;
anaurun.StokNumarasi = item.Urun_kod;
anaurun.KayitNo = item.Kayit_no;
anaurun.Fiyat = Convert.ToDecimal(carp);
anaurun.BayiFiyat = Convert.ToDecimal(carp);
anaurun.Tedarikci = "x";
anaurun.UrunAciklama = item.Detay_ozellik;
db.Ana_Urun.Add(anaurun);
db.SaveChanges();
}
if (doviz == false)
{
anaurun.KategoriId = U;
anaurun.KategoriAdi = katisim;
anaurun.UrunAdi = item.Urun_tanim;
anaurun.UrunMarka = item.Marka;
anaurun.UrunStokDurumu = Convert.ToInt32(item.Stok_durum);
anaurun.Fiyat = Convert.ToDecimal(item.Fiyat_sonk);
anaurun.BayiFiyat = Convert.ToDecimal(item.Fiyat_bayi);
anaurun.UrunResmi1 = item.Resim_b;
anaurun.UrunResmi2 = item.Resim_eb;
anaurun.AltId = 0;
anaurun.UrunVitrin = 1;
anaurun.indirim = 1;
anaurun.StokNumarasi = item.Urun_kod;
anaurun.KayitNo = item.Kayit_no;
anaurun.Tedarikci = "x";
db.Ana_Urun.Add(anaurun);
db.SaveChanges();
}
Label1.Text = "Ürünler Eklendi";
}
}
if (item.Opsiyon_genel != null)
{
foreach (Secenek sec in item.Opsiyon_genel.Secenekler.Secenek.ToList())
{
bool var = db.Ana_Urun.Any(u => u.StokNumarasi == sec.Sec_barkod);
if (var == true)
{
Label1.Text = "Ürünler Güncellendi";
}
if (var == false)
{
var varyantlar = from i in db.Ana_Urun.ToList()
where i.Varyant == 1
select i.Id;
foreach (var x in varyantlar)
{
anaurun.AltId = x;
anaurun.Ozellik1Adi = sec.Sec_tanim1;
anaurun.Ozellik2Adi = sec.Sec_tanim2;
anaurun.Varyant = 2;
anaurun.StokNumarasi = sec.Sec_barkod;
anaurun.UrunStokDurumu = Convert.ToInt32(sec.Sec_miktar.ToString());
}
db.Ana_Urun.Add(anaurun);
db.SaveChanges();
}
}
}
}