SharePoint發(fā)行版本有SharePoint2003、SharePoint2007、Sharepoint 2010、SharePoint2013和SharePoint2016。SharePoint提供了功能強(qiáng)大的團(tuán)隊(duì)協(xié)作環(huán)境,使得組織能夠在整個(gè)組織內(nèi)部實(shí)現(xiàn)整合、組織、查找和提供 SharePoint站點(diǎn)。 上傳文檔到文檔庫(kù),并對(duì)項(xiàng)目級(jí)授權(quán),查看項(xiàng)目級(jí)權(quán)限方法 //在列表根目錄下創(chuàng)建文件夾 public static string CreatFolderToSPDocLib(string strFolderName, string strDocLibName) { string FolderPath = string.Empty; ? try { using (SPSite site = new SPSite(SiteUrl)) { using (SPWeb web = site.OpenWeb()) { web.AllowUnsafeUpdates = true; SPListCollection lists = web.GetListsOfType(SPBaseType.DocumentLibrary); lists.IncludeRootFolder = true; SPList list = lists[strDocLibName]; list.EnableFolderCreation = true; SPListItem item = list.Items.Add(list.RootFolder.ServerRelativeUrl, SPFileSystemObjectType.Folder, strFolderName); item.Update(); list.Update(); FolderPath = item["FileRef"].ToString(); web.AllowUnsafeUpdates = false; } } } catch { } return FolderPath; } ? //上傳文件到文件夾,并授權(quán)給相關(guān)用戶 public static bool UpLoadFileToFolder(byte[] FileStream, string FileName, string FolderPath, string allLoginName) { try { using (SPSite site = new SPSite(SiteUrl)) { using (SPWeb web = site.OpenWeb()) { web.AllowUnsafeUpdates = true; SPFolder folder = web.GetFolder(FolderPath); ? SPListItem listItem = folder.Files.Add(FileName, FileStream).Item; ? //斷開原來(lái)列表項(xiàng)所繼承的權(quán)限,使其可以設(shè)置獨(dú)立權(quán)限 listItem.BreakRoleInheritance(true); //將原來(lái)所繼承的權(quán)限通通移除 foreach (SPRoleAssignment roleAssignment in listItem.RoleAssignments) { roleAssignment.RoleDefinitionBindings.RemoveAll(); roleAssignment.Update(); listItem.Update(); } //獲取將要設(shè)置權(quán)限的用戶 SPUser myUser = web.EnsureUser(allLoginName); //定義權(quán)限分配 SPRoleAssignment myRoleAssignment = new SPRoleAssignment(myUser.LoginName, myUser.Email, myUser.Name, myUser.Notes); //綁定設(shè)置的權(quán)限 myRoleAssignment.RoleDefinitionBindings.Add(web.RoleDefinitions.GetByType(SPRoleType.Reader)); //把這個(gè)權(quán)限加到我們的列表中 listItem.RoleAssignments.Add(myRoleAssignment); listItem.Update(); ? web.AllowUnsafeUpdates = false; return true; } } } catch { return false; } } ? //通過(guò)ID獲取列表項(xiàng) public static string GetRoleAssignmentsOfSPListItem(string ListName, int ItemID) { string reValue = string.Empty; try { using (SPSite site = new SPSite(SiteUrl)) { using (SPWeb web = site.OpenWeb()) { web.AllowUnsafeUpdates = true; SPList list = web.Lists[ListName]; SPListItem item = list.Items.GetItemById(ItemID); SPRoleAssignmentCollection Rolecoll = item.RoleAssignments; foreach (SPRoleAssignment role in Rolecoll) { for (int i = 0; i < role.roledefinitionbindings.count;=""> { reValue += (role.Member.LoginName + ":" + role.RoleDefinitionBindings[i].Name + ":" + role.RoleDefinitionBindings[i].BasePermissions.ToString()); } } ? web.AllowUnsafeUpdates = false; } } } catch { } return reValue; } ? 后記:幾個(gè)簡(jiǎn)單的方法,測(cè)試通過(guò),可能不太完善,需要的話可以繼續(xù)完善。 Sharepoint 可以幫助企業(yè)用戶輕松完成日常工作。 |
溫馨提示:喜歡本站的話,請(qǐng)收藏一下本站!