需求:
有乙個文件庫, 然後下面有很多的資料夾, 每個資料夾都有不同的許可權系統, 因此當需要維護這些許可權的時候,非常麻煩. 所以需要乙個webpart來管理這些許可權的內容.
分析:1. 用乙個treeview列出文件庫中的所有資料夾的內容.
2. 使用乙個gridview列出每個資料夾的許可權, 點選不同的資料夾時候顯示相應的許可權.
3. gridview有刪除的功能.
4. 可以新增uers到乙個group, 把users/groups新增到某些資料夾中.
實現:1. 建立了乙個類顯示許可權的部分資訊.:
class permission
set
}public t permissions
set
}public permission()
public permission(t strusers, t strpermissions)
}2. 列出相關資料夾的許可權:
list> getitemspermissions(string itemname)
}return sublistp;
}list> getroles(sproleassignmentcollection osproles)
strpermissionlevelname = strpermissionlevelname.substring(0, strpermissionlevelname.length - 1);
permissionsubpermission = new permission(osprole.member.name, strpermissionlevelname);
resultlist.add(subpermission);
}return resultlist;
}3. 刪除許可權:
void deleterole(sproleassignmentcollection osproles, string strgroupname)}}
// delete permissions in selected folder.
splistitemcollection osplistitems = mylist.folders;
foreach (splistitem ospitem in osplistitems)
}}4. 新增user到group:
int addusertogroup(string strusername, string strgroupname, spweb myweb)}}
return groupid;
}5. 新增users/groups到指定的資料夾中:
// 獲得選中的permissions
listlistpermissions = new list();
foreach (listitem item in checkboxlistpermissions.items)
}// 獲得user/group
if (currentuser != null)
else if (currentgroup != null)
foreach (string strroledefinition in listpermissions)
// 新增到指定的資料夾中
splistitemcollection osplistitems = mylist.folders;
foreach (splistitem ospitem in osplistitems)
}效果:
1. 顯示許可權的頁面:
2. 新增users/groups 的頁面.
sharepoint跨文件庫複製文件
比較簡單,直接貼 吧 文件庫文件複製,獲取檔案 public void getcopydoclibfile string idstr else catch exception ex ex.message this.jresponse.retcode 2 this.jresponse.message ...
sharepoint建立文件庫
以下部分 是根據當前sharepoint站點登入賬戶取建立對應子 下的文件庫,唯一不足的就是沒有事先判斷文件庫是否存在再去建立,若文件庫存在在建立的話會丟擲異常,提示文件庫已存在 判斷當前登陸使用者對應的文件庫是否存在不存在即建立 public void creatdocs int retcode ...
sharepoint 文件庫,資料夾授權
在專案中用到了文件庫授權的方法,這裡將查詢到的方式總結一下。在邏輯中用到的方法。獲取sharepoint站點角色定義 rest api private static arraylist getroledefinition string hostweburl,string strapi,string ...