Sınırsız Kategori Haritalama

Yasin Ersever tarafından yayınlanmıştır 19. Kasım 2011 00:47

CSharpNedir.com Forum bölümünde bir arkadaşın sorduğu Sınırsız Kategori sorunsalına çözüm olmak için ufak bir kod yazdım. İlerde bende belki kullanırım ve yardıma ihtiyacı olana yardım edelim diyerek paylaşıyorum.

Sorunumuzu kısaca anlatmak gerekirse, Sınırsız kategorileme yapan bir sistemde bir ürünün hangi kategorilerin altında bulunduğunu haritalamak istiyoruz.

Bunun için ilk önce sınırsız kategori tablosunun yapısını, ürün tablosunun yapısını ve örnekleme için kullanacağımız rasgele değerleri aşağıda görüldüğü gibi işliyoruz.

Kategori Tablo Yapısı :

Ürün Tablo Yapısı : 

Kategori Tablosu Örnek Dataları :

Ürün Tablosu Örnek Dataları :

Ve sıra geldi kodlamamıza :

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data.SqlClient;
using System.Collections;

namespace WebApplication1
{
    public partial class Default : System.Web.UI.Page
    {
        string BaglantiSatiri = "server=xxxxx.server;database=xxxxx.data;User Id=xxxxx.user;Password=xxxxx.password";

        public string BilgiGetir(string Tablo, string IstenenBilgi, string AramaSorgu)
        {
            string sonuc = "-1";
            SqlConnection Baglanti = new SqlConnection(BaglantiSatiri);
            SqlCommand SQLCumle = new SqlCommand("SELECT " + IstenenBilgi + " FROM " + Tablo + " WHERE " + AramaSorgu, Baglanti);
            SqlDataReader Kayit = null;
            Baglanti.Open();
            Kayit = SQLCumle.ExecuteReader();
            if (Kayit.Read())
            {
                sonuc = Kayit[0].ToString();
            }
            if (!Kayit.HasRows) sonuc = null;
            Baglanti.Close();
            return sonuc;
        }

        public string KategoriGetir(int UrunID)
        {
            int TempID = Convert.ToInt32(BilgiGetir("Urun","KatID","ID=" + UrunID.ToString()));
            int Temp = 0;
            string TempKategoriListesi = "";

            List<int> TempDizi = new List<int>();
            TempDizi.Add(TempID);

            while (TempID != 0)
            {
                TempDizi.Add(Convert.ToInt32(BilgiGetir("Kategori", "UstID", "ID=" + TempID)));
                TempID = TempDizi.Last();
            }

            Temp = TempDizi.Count;

            while (Temp != 0)
            {
                TempKategoriListesi += BilgiGetir("Kategori", "Name", "ID=" + TempDizi[Temp - 1].ToString()) + " -> ";
                Temp = Temp - 1;
            }

            return TempKategoriListesi.Substring(4, TempKategoriListesi.Length - 4) + BilgiGetir("Urun", "Name", "ID=" + UrunID.ToString());
        }

        protected void Page_Load(object sender, EventArgs e)
        {
            Literal1.Text = KategoriGetir(1);
        }
    }
}

Görüldüğü üzere BilgiGetir(...) adında bir fonksiyonumuz mevcut olup, bu kodu bir çok yerde kullanmışımdır. Tek bir veri okumak gerektiği yerlerde son derece yardımcı olmaktadır. Kodlamayı biraz anlatmak gerekirse yaptığımız işlem, ürünün bağlı olduğu kategoriyi bulup adını almak sonra o kategoriye ait üst kategoriyi bulup adını almak ve bu işlemi en üst kategoriyi bulana kadar tekrarlamak. Kodları az çok incelediğinizde bunu zaten sizde farkedeceksinizdir. Arkadaşa yardımcı olmak için biraz hızlı biraz acemice bir kodlama oldu ama iş görmesi dileği ile. Bu da çalışan kodumuzun ekran çıktısı :

3 kişi tarafından 4.3 olarak değerlendirildi

  • Currently 4,333333/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Etiketler:

Asp.Net

Deprem Haritası haberleri taşındı

Yasin Ersever tarafından yayınlanmıştır 17. Kasım 2011 01:54

Deprem haritasına ait kişisel sayfam üzerinden yayınlanmakta olan haberleri artık http://depremharitasi.yasinersever.com/Haber adresinden takip edebilirsiniz. Biliyorum artık Deprem Haritası üzerinde uğraşmayacam, dedim ama kalan son zamanlarda yeni bir projeye başlamaktansa, ufak tefek aklıma gelenleri sistem üzerine uygulamak daha kolay oluyor.

Sistemde bir kaç değişiklik ve haber menüsünün eklenmesi ile arama işlemini birlikte geliştirmiş bulunmaktayım. Fakat arama ile ilgili ufak bir sıkıntı mevcut olup, sıkıntının giderilmesinin ardından arama işlemi tekrar aktif olacaktır.

2 kişi tarafından 4.5 olarak değerlendirildi

  • Currently 4,5/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Etiketler:

Deprem Haritası

Genel Durum Değerlendirmesi

Yasin Ersever tarafından yayınlanmıştır 9. Kasım 2011 01:22

Şöyle bi baktım da ben bu deprem haritası olayına biraz fazla takılmışım. Şimdi şöyle bi genel durum değerlendirmesi yapalım. ;)

Diyeceksiniz ki yine aynı konu. Evet, deprem haritası. Ama bu sefer son noktayı koydum. Yapmak istediğim ufak tefek değişiklikler vardı, onları tamamladım. Şimdi beklemeye geçtik. İnanmayacaksınız ama kaynak kodları güzelce yedekleyip, bilgisayarımdan sildim. Artık bu konuda rahatsınız.

Evet bu gün kurban bayramının 3. günü, pardon 4. günü oldu artık. Geç de olsa kurban bayramınızı bi kutlayalım. Şu an Elazığ'dayım ve bu akşam geri dönüyorum. Geri dönmek için hem sabırsızlanıyorum, hem de pek gidesim yok. Sırf bu cümle için biraz canım sıkkın. Ama hallederiz. Hiç sevmediğim birisinin lafı ile bu durum değerlendirmesine de  son veriyorum; biz hallederiz koçusu. (pis herif :@)

Evet yavaş yavaş hazırlıklar başladı ve bir yandan heyecan, bir yandan da korku desen değil, ne olduğu tanımsız bir duygu var ama dur bakalım. Çıkar kokusu.

Geçen, Elazığ'a gelirken 2011 kışının ilk karı ile karşılaştım. Bana karşı biraz soğuk davrandı ama Allah vergisi doğa yapısına verdim. Fazla bozulmadım yani.  Ama ben yine de 2 kare fotoğrafını aldım. http://twitpic.com/7adrd0 , http://twitpic.com/7adnix

Geri kalanında hep aynı bilindik şeyler işte. Ama 2 gün sonraya güzel bir yazı ile karşınıza çıkmaya hazırlanıyorum. Kafamdakileri bi topluyum, sonra ben yazarım, sizden de isteyen okur.

Yazıların kapanışlarını yaparken hep AROG filmindeki Arif'in sonda söylediği arogca hoşçakalını yazmak istiyorum ama ah ahhh. Neyse siz anladınız beni.

P.S. : 4. gün olsa da bayram bayramdır. Benim için şeker yiyin.

2 kişi tarafından 4.5 olarak değerlendirildi

  • Currently 4,5/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Etiketler: , ,

Yazdıklarım

Deprem Haritası Yenilendi

Yasin Ersever tarafından yayınlanmıştır 29. Ekim 2011 14:57
Deprem Haritası v2.0 ile karşınızda. Yenilenen tasarımı ve daha hızlı çalışan sistemi ile artık daha kararlı bir şekilde karşınızda. Asp.Net MVC 3 teknolojisi ile yeniden geliştirilen sistemde artık deprem aktivite detaylarını daha kullanışlı bir şekilde görebilirsiniz. Devam eden çalışmalarla birlikte ve yeniliklerle karşınızda olmaya devam edecek.

6 kişi tarafından 2.2 olarak değerlendirildi

  • Currently 2,166667/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Etiketler: , ,

Deprem Haritası

Deprem Haritası artık Twitter'da

Yasin Ersever tarafından yayınlanmıştır 24. Ekim 2011 12:50
Artık twitter üzerinden depremleri anlık olarak takip edebilirsiniz. Sistem üzerinde yapmış olduğum iyileştirmelerden sonra oluşan depremleri artık twitter üzerinden anında öğrenebilirsiniz. Bunun için @DepremHaritasi adresini takip etmeniz yeterli. Geri kalanında artık her depremden haberdar olabilirsiniz.

2 kişi tarafından 4.5 olarak değerlendirildi

  • Currently 4,5/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Etiketler: ,

Deprem Haritası



Yasin Ersever © 2009 -2011

Diyorum ki :

mutlu ve huzurlu

Özlem Diyor ki :

üzülme aşkım yanımda değilsin şuan ama kalbimdesin,seni seviyorum 

 

 

Yazar Hakkında

Benim hakkımda birşey mi merak ettiniz. Buyrun Hakkımda sayfasına.








Son Yazılar


Bu sitede yayınlanan tüm materyaller Yasin Ersever'e aittir © 2009 - 2011