您的位置:首页 > 其它

递归获取SharePoint文档库文件夹内的所有文件

2010-10-19 11:45 561 查看
代码

private DataTable GetFilesData()
{
SPList list = GetList();
DataTable dt = CreateDatatable();
SPFolder f = null;
try
{
if (string.IsNullOrEmpty(_folderName))
f = list.RootFolder;
else
f = list.RootFolder.SubFolders[_folderName];
if (!string.IsNullOrEmpty(_subFolder))
f = f.SubFolders[_subFolder];
GetAllFiles(f, ref dt, list.ID.ToString("B"));
}
catch
{ }
return dt;
}

private void GetAllFiles(SPFolder f, ref DataTable dt, string listId)
{
SPListItem item;
foreach (SPFile file in f.Files)
{
item = file.Item;
DataRow dr = dt.NewRow();
dr["IconUrl"] = file.IconUrl; //item["DocIcon"];
string newTag = "";
if (file.TimeCreated.AddDays(2) > DateTime.Now)
newTag = "<img border='0' src='/_layouts/2052/images/new.gif'/>";
dr["NewTag"] = newTag;
dr["DocItemID"] = item.ID;
dr["DocListID"] = listId;
dr["FileRef"] = item["FileRef"];
dr["Title"] = item["Title"];
dr["Author"] = file.Author.Name;
dr["Created"] = item["Created"];
dr["Modified"] = item["Modified"];
dr["Category1"] = item["Category1"];
dr["Category2"] = item["Category2"];
dr["SecurityLevel"] = item["SecurityLevel"];
dr["BaseName"] = item["BaseName"];
dt.Rows.Add(dr);
}
foreach (SPFolder sf in f.SubFolders)
{
GetAllFiles(sf, ref dt, listId);
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐