[70-541, #6] - Annullare il check-out di un documento in SharePoint

Per concludere l’argomento relativo al check-in / check-out di un documento parliamo di come è possibile annullare un check-out effettuato su un documento. il metodo “UndoCheckOut” dell’object model di SharePoint è quello che fa al caso nostro.

 

// Annullare il check-out di un file passando come argomento l’URL dello stesso

public void UndoCheckout(string fileUrl)

{

      try

      {

            using (SPSite site = new SPSite(fileUrl))

            {

                  using (SPWeb web = site.OpenWeb())

                  {

                        SPFile file = web.GetFile(fileUrl);

 

                        file.UndoCheckOut();

                        return;

                  }

            }

      }

      catch (System.Exception ee)

      {

            throw ee;

      }

}

 

[70-541, #5] - Come effettuare il check-out ed il download di un documento in SharePoint

Tramite questa funzione è possibile effettuare il check-out di un documento ed effettuare il download dello stesso. Questa funzione può essere utilizzata abbinata a quella di verifica dello stato di check-out descritta nel precedente post.

 

// Effettuare il check-out di un file ed effettuare il download del suo

// contenuto passando come argomento l’URL dello stesso

public byte[] CheckOut(string fileUrl)

{

      try

      {

            using (SPSite site = new SPSite(fileUrl))

            {

                  using (SPWeb web = site.OpenWeb())

                  {

                        SPFile file = web.GetFile(fileUrl);

 

                        file.CheckOut();

                        return file.OpenBinary();

                  }

            }

      }

      catch (System.Exception ee)

      {

            throw ee;

      }

}

 

Technorati Tags: , ,

[70-541, #4] - Come verificare lo stato di check-out di un documento in SharePoint

Se proviamo a scaricare un documento da una Documen Library di SharePoint in stato di check-in ci viene ovviamente restituito un errore. La stessa cosa avviene se proviamo ad effettuare il check-out di un documento che si trovi già in stato di check-out. Abbiamo la necessità di verificare lo stato di Check-out del documento prima di compiere queste operazioni. Per fortuna l’object model di SharePoint ci mette a disposizione gli appositi metodi:

 

// Verificare lo stato di check-out di un file passando come argomento l’URL dello stesso

public string GetCheckOutStatus(string fileUrl)

{

      try

      {

            using (SPSite site = new SPSite(fileUrl))

            {

                  using (SPWeb web = site.OpenWeb())

                  {

                        SPFile file = web.GetFile(fileUrl);

 

                        return file.CheckOutStatus.ToString();

                  }

            }

      }

      catch (System.Exception ee)

      {

            throw ee;

      }

}

 

Technorati Tags: , ,

 

[70-541, #3] - Come effettuare il check-in di un documento in SharePoint

Una volta fatto l’upload del nostro documento all’interno della Document Library di SharePoint, ecco come effettuarne il check-in.

 

// Effettuare il Check-in di un file passando come argomento l’URL dello stesso

public void CheckIn(string fileUrl, string comments)

{

      try

      {

            using (SPSite site = new SPSite(fileUrl))

            {

                  using (SPWeb web = site.OpenWeb())

                  {

                        SPFile file = web.GetFile(fileUrl);

 

                        file.CheckIn(comments);

                  }

            }

            return;

      }

      catch (System.Exception ee)

      {

            throw ee;

      }

}

 

Technorati Tags: , ,

[70-541, #2] - Come creare una cartella in una Document Library di SharePoint

Altra funzione di uso comune è quella che permette di creare una cartella all’interno di una document library.

 

// Creare una sottocartella all’interno di una document library

// Il metodo restituisce l’URL alla cartella creata

public string CreateSubFolder(string folderName, string targetFolder)

{

      // il folder può essere passato nel formato:

      // http://{sito}/sites/{doclibrary}

      // ex.: "http://vmw2k3:1001/sites/DocumentCenter01"

      using (SPSite site = new SPSite(targetFolder))

      {

            using (SPWeb web = site.OpenWeb())

            {

                  SPFolder folder = web.GetFolder(targetFolder);

                  SPFolder newFolder = folder.SubFolders.Add(folderName);

 

                  return newFolder.Url;

            }

      }

}

 

Technorati Tags: , ,

[70-541, #1] - Come caricare un documento in SharePoint

Ultimi giorni di preparazione per l’esame 70-540 dedicati all’uso dell’object model di SharePoint. Ovvero come scrivere il codice che effettua tutte quelle semplici operazioni che normalmente vengono effettuate dal sito SharePoint.

Cominciamo con una delle funzioni basilari: effettuare l’upload di un documento all’interno di una document library.

 

// Effettuare l’upload di un documento passando il suo nome, il folder di destinazione

// ed il documento in un array di bytes

// Il metodo restituisce l’URL al nuovo documento archiviato

public string UploadDocument(string fileName, byte[] fileContents, string targetFolder, string title)

{

      if (fileContents == null)

      {

            return "Null Attachment";

      }

      try

      {

            // il folder può essere passato nel formato:

            // http://{sito}/sites/{doclibrary}

            // ex.: "http://vmw2k3:1001/sites/DocumentCenter01"

            using (SPSite site = new SPSite(targetFolder))

            {

                  using (SPWeb web = site.OpenWeb())

                  {

                        SPFolder folder = web.GetFolder(targetFolder);

 

                        SPFile newFile = folder.Files.Add(fileName, fileContents);

                        newFile.Item["Title"] = title;

                        newFile.Item.Update();

                        return site.Url + "/" + newFile.Url;

                  }

            }

      }

      catch (System.Exception ee)

      {

            throw ee;

      }

}

 

Per trasformare un documento memorizzato sul disco in un array di byte da passare alla funzione il codice è il seguente:

 

MemoryStream stream = new MemoryStream();

FileStream fs = File.OpenRead("c:\miofile.txt");

byte[] b = new byte[fs.Length];

while (fs.Read(b, 0, b.Length) > 0)

{

      stream.Write(b, 0, b.Length);

}

fs.Close();

stream.Close();

 

Technorati Tags: , ,
«febbraio»
domlunmarmergiovensab
28293031123
45678910
11121314151617
18192021222324
25262728123
45678910