/// <summary> /// 递归复制文件夹集 /// </summary> /// <param name="list">集合</param> /// <param name="FileID">老文件夹ID</param> /// <param name="newFileID">新文件夹ID</param> /// <param name="oldParentIDs">老文件夹父级IDs</param> /// <param name="newParentIDs">新文件夹父级IDs</param> void ForeachCopyFile(List<OS_Files> list, string FileID, string newFileID, string oldParentIDs, string newParentIDs) { var v = list.Where(p => p.ParentID == new Guid(FileID)); foreach (var _v in v) { OS_Files model = new OS_Files(); model.ID = Guid.NewGuid(); model.Name = _v.Name; model.ParentID = new Guid(newFileID); model.ParentIDs = _v.ParentIDs.Replace(oldParentIDs, newParentIDs) + newFileID + "|"; model.state = 0; model.ModifiedDate = model.CreatedDate = DateTime.Now; db.OS_Files.Add(model); ForeachCopyFile(list, _v.ID.ToString(), model.ID.ToString(), _v.ParentIDs, model.ParentIDs); } }