rob33n adlı üyeden alıntı: mesajı görüntüle
Bilmiyorum sorununu çözdün mü ama bilmeyenler için veya öğrenmek isteyenler için yazayım.
Recursive kullanarak istediğin şeyi yapabilirsin. Kod tarafında değil ama sql tarafında yaparsan daha hızlı sonuç alırsın. Aşağıdaki sorgu maksimum 4 seviyede sonuç verir. Maksimum kaçıncı seviyeye kadar alt kategorin varsa ona göre değiştir.

Bu sorgu sana Masaüstü kategorisine girdiğinde alt kategorilerini listeler. Gelen listeye göre IN kullanarak ürünleri listeleyebilirsin.

WITH parent(pid, pname)
AS
(
   SELECT id, name FROM category
   WHERE id=1
   UNION ALL
   SELECT PA.id, name
   FROM category C JOIN parent as PA
   ON C.MainCatID= PA.pid
)
SELECT * FROM parent OPTION(MAXRECURSION 4)
Sorunum çözüldü teşekkür ederim