Quantcast
Channel: SharePoint 2013 - Development and Programming forum
Viewing all articles
Browse latest Browse all 7589

DocumentSet.Import Access Denied error, RunWithElevatedPrivileges does not help

$
0
0

Hi, I am trying to move DocumentSet from one library to another. User has Contribute permissions on site. Everything works when user tries to move emty DocumentSet, but then DocumentSet has some documents inside - user gets "Access denied" error (even if I use SPSecurity.Run.With.ElevatedPrivileges).

If user have "Full Control" permissions - everything works fine.

Maybe someone faced with similar problem?

here is my code:

private DocumentSet moveDocumentSet(string newDataSetName, Guid currentList, int dsid, SPFolder destinationFolder)
{
try
{
DocumentSet result = null;
SPSecurity.RunWithElevatedPrivileges(delegate() {
using (SPSite site = new SPSite(SPContext.Current.Site.ID))
 {
  using (SPWeb web = site.OpenWeb(SPContext.Current.Web.ID))
   {
    using (MemoryStream ms = new MemoryStream())
     {
	SPList clist = web.Lists.GetList(currentList, false);
	SPListItem citem = clist.GetItemById(dsid);
	DocumentSet documentSet = DocumentSet.GetDocumentSet(citem.Folder);
	SPContentType ct = citem.ContentType;
	documentSet.Export(ms);//byte[] data = documentSet.Export();
	Hashtable properties = citem.Folder.Properties;
	result = DocumentSet.Import(ms, newDataSetName, destinationFolder, ct.Id, properties, web.CurrentUser);
     }
   }
 }
});
}
return result;
}
catch(Exception ex)
{
return null;
}
}  



Viewing all articles
Browse latest Browse all 7589

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>