码迷,mamicode.com
首页 > 数据库 > 详细

通过数据库数据构建文件夹结构的递归算法

时间:2017-08-13 11:13:38      阅读:167      评论:0      收藏:0      [点我收藏+]

标签:direct   adf   recursion   director   load   list   disk   data   info   

public void fileRecursion(List<RFN.BM.OA.NetdiskDataInfo> netdiskDataInfoRecursions, string path)
{
var uploadFile = new NST.BL.STM.UploadFile();
var netdiskData = new RFN.BL.OA.NetdiskData();

foreach (var netdiskDataInfoRecursion in netdiskDataInfoRecursions)
{
if (netdiskDataInfoRecursion.FileSize == null)//通过FileSize 判断是文件还是文件夹
{
var pathDirectory = path + netdiskDataInfoRecursion.DataName + "\\";
Directory.CreateDirectory(pathDirectory);//建立文件夹
}
else
{
string filePath = path + netdiskDataInfoRecursion.DataName;

var uploadFileInfo = uploadFile.SelectById(netdiskDataInfoRecursion.UploadFileId);

string uploadFilePath = @"D:\Work\Work4\RFNWeb\Uploads\" + uploadFileInfo.NewFileName;//本地Uploads路径

FileInfo filePathInfo = new FileInfo(filePath);
FileInfo uploadFilePathInfo = new FileInfo(uploadFilePath);

var filePathCreate = filePathInfo.Create();
filePathCreate.Close();
uploadFilePathInfo.CopyTo(filePath, true);//从上传文件中复制到建立好的文件夹中
}
}
foreach (var netdiskRecursion in netdiskDataInfoRecursions)
{
if (netdiskRecursion.FileSize == null)
{
netdiskDataInfoRecursions = netdiskData.SelectBy("[ParentId]=?", "[CreateTime]", netdiskRecursion.Id);
if (netdiskDataInfoRecursions != null)
{
path = path + netdiskRecursion.DataName + "\\";
fileRecursion(netdiskDataInfoRecursions, path);//如果是文件夹且数据不为空,则继续调用此方法。
}
}
}
}

通过数据库数据构建文件夹结构的递归算法

标签:direct   adf   recursion   director   load   list   disk   data   info   

原文地址:http://www.cnblogs.com/zhuxueyuan/p/7352471.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!