下面问题 用递归怎么做
现有2张表 产品和产品类别(无限极)
类别ID 类别名称 上级ID 类别编码
cid cname pid cencode
1 大类一 0 10
2 大类二 0 11
3 大类三 0 12
4 二级类 1 1001
5 三级类 4 100101
6 二级类 1 1002
7 三级类 4 100102
产品表
产品ID 产品名称 产品类别ID 产品编码
1 产品一 5 10010101
2 产品二 5 10010102
3 产品三 4 100101
4 产品四 4 100102
5 产品五 7 10010201
问题来了 ,现在我要修改产品类别信息.
比如把7号(三级类)修改为pid为1,包括其类别及其子类编码和相关别的产品编码都要随之改变:
呈现结果为:7号(三级类)编码为1003,产品五编码为100301
若把4号类别(二级类)的pid改为3,那么呈现结果为:5号(三级类)编码为120101 产品编码也随着改变
本人菜鸟 最好写出详细过程,谢谢大侠了
------解决方案--------------------写一个思路给你,我想简单的思路比完整的代码更有利于你学习:
LoadRoot()
{
data = select * from table where pid = 0
foreach (item in data)
{
treeview.Nodes.Add(item)
LoadSubItems(item, item.id)
}
}
LoadSubItems(Node node, id)
{
data = select * from table where pid = id
foreach (item in data)
{
node.Nodes.Add(item)
LoadSubItems(item, item.id)
}
}
------解决方案--------------------有一个规定,一