Пример #1
0
        public override bool Write(string fileName, byte[] data)
        {
            try
            {
                SharepointClientContext.Load(SharepointList.RootFolder);
                SharepointClientContext.ExecuteQuery();

                string fileUrl = String.Format("{0}/{1}", SharepointList.RootFolder.ServerRelativeUrl, fileName);
                Microsoft.SharePoint.Client.File.SaveBinaryDirect(_clientContext, fileUrl, new MemoryStream(data, false), true);
                _clientContext.ExecuteQuery(); //Uploaded .. but still checked out...


                //Load the FieldCollection from the list...
                SP.FieldCollection fileFields = SharepointList.Fields;
                _clientContext.Load(fileFields);
                _clientContext.ExecuteQuery();

                SP.File     uploadedFile    = _web.GetFileByServerRelativeUrl(fileUrl);
                SP.ListItem newFileListItem = uploadedFile.ListItemAllFields;
                newFileListItem.Update();
                _clientContext.ExecuteQuery();
                return(true);
            }
            catch
            {
                return(false);
            }
        }
Пример #2
0
 public override Stream GetStream(string fileName)
 {
     try
     {
         if (TryGetFileByServerRelativeUrl(_web, _web.ServerRelativeUrl + "/" + LibraryName + "/" + fileName, out SP.File spFile))
         {
             SharepointClientContext.Load(spFile);
             SharepointClientContext.ExecuteQuery();
             using (SP.FileInformation fileInfo = SP.File.OpenBinaryDirect(_clientContext, spFile.ServerRelativeUrl))
             {
                 return(fileInfo.Stream);
             }
         }
     }
     catch
     {
         return(null);
     }
     return(null);
 }
Пример #3
0
        public override string[] GetList(string filter = "*.*")
        {
            List <string> resultList = new List <string>();

            try
            {
                SP.ListItemCollection spListItems = SharepointList.GetItems(SP.CamlQuery.CreateAllItemsQuery(20, "Title"));
                SharepointClientContext.Load(spListItems);
                SharepointClientContext.ExecuteQuery();
                foreach (SP.ListItem spListItem in spListItems)
                {
                    string fileName = spListItem.FieldValues["FileLeafRef"].ToString();
                    if (Operators.LikeString(fileName, filter, CompareMethod.Text))
                    {
                        resultList.Add(fileName);
                    }
                }
            }
            catch
            {
            }
            return(resultList.ToArray());
        }