首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > asp.net >

数据库中把原来数据复制一份,并且保存原有构造ID-PID模式,脑袋转不过来了,求大神

2013-11-26 
数据库中把原来数据复制一份,并且保存原有结构ID-PID模式,脑袋转不过来了,求大神!一下大概是数据库结构PID

数据库中把原来数据复制一份,并且保存原有结构ID-PID模式,脑袋转不过来了,求大神!
一下大概是数据库结构  PID=0代表根节点
ID     Name    PID  State  OrderNumber
1      目录1    0     草稿    1
2      子目录1   1     草稿    2
3      子目录2   2     草稿   3

以上是原数据 
现在要复这着3条数据 插入到本表,之后

ID     Name    PID  State     OrderNumber
1      目录1    0     草稿          1
2      子目录1   1     草稿         2
3      子目录2   2     草稿         3
4      目录1    0     发布          1
5      子目录1   4     发布         2
6      子目录2   5     发布         3

用代码添加的时候这个PID这里不好弄,卡住了


我下面代码值完成了复制功能,但是ID-PID结构就没保存,这里不知道弄了

//itemColl是获取的那三条根据OrderNumber从小到大排序数据
foreach (SPListItem item in itemColl)
{
   //创建一个新行
   SPListItem newItem = taskList.AddItem();
   //把数据库里面循环列的数据全部给newItem
   ConvertTask(newItem, item);
   //改变状态
   newItem["State"] = "发布";

   //插入数据库
   spWeb.AllowUnsafeUpdates = true;
   newItem.Update();
}

这行代码执行结果
ID     Name    PID  State     OrderNumber
1      目录1    0     草稿          1
2      子目录1   1     草稿         2
3      子目录2   2     草稿         3
4      目录1    0     发布          1
5      子目录1   2     发布         2
6      子目录2   3     发布         3
----------------PID结构丢失 
求思路
[解决办法]
引用:
一下大概是数据库结构  PID=0代表根节点
ID     Name    PID  State  OrderNumber
1      目录1    0     草稿    1
2      子目录1   1     草稿    2
3      子目录2   2     草稿   3

以上是原数据 
现在要复这着3条数据 插入到本表,之后

ID     Name    PID  State     OrderNumber
1      目录1    0     草稿          1
2      子目录1   1     草稿         2
3      子目录2   2     草稿         3
4      目录1    0     发布          1
5      子目录1   4     发布         2
6      子目录2   5     发布         3

用代码添加的时候这个PID这里不好弄,卡住了


我下面代码值完成了复制功能,但是ID-PID结构就没保存,这里不知道弄了
//itemColl是获取的那三条根据OrderNumber从小到大排序数据
foreach (SPListItem item in itemColl)
{
   //创建一个新行
   SPListItem newItem = taskList.AddItem();
   //把数据库里面循环列的数据全部给newItem


   ConvertTask(newItem, item);
   //改变状态
   newItem["State"] = "发布";

   //插入数据库
   spWeb.AllowUnsafeUpdates = true;
   newItem.Update();
}


这行代码执行结果
ID     Name    PID  State     OrderNumber
1      目录1    0     草稿          1
2      子目录1   1     草稿         2
3      子目录2   2     草稿         3
4      目录1    0     发布          1
5      子目录1   2     发布         2
6      子目录2   3     发布         3
----------------PID结构丢失 
求思路


用递归,调用自身的方法!

热点排行