La mia app modifica un file in SharePoint tramite Web Client / WebDAV (WebDAV redirector). Come posso controllare out / check-in?

StackOverflow https://stackoverflow.com/questions/537990

  •  22-08-2019
  •  | 
  •  

Domanda

sto integrando la mia domanda in modo che possa modificare i file memorizzati in SharePoint. Sto utilizzando il servizio Web Client WebDAV Redirector AKA (Webclnt.dll), che fa un ottimo lavoro di lasciare che il CreateFile normale / leggere / scrivere le chiamate API di Windows essere reindirizzati da loro auto normale percorso di I / O fuori alla rete tramite WebDAV. Tuttavia, posso ottenere solo accesso in sola lettura al file se è registrato.

Utilizzando il servizio Web Client, come posso causare il file da controllare quando posso modificare, e poi perchè è da controllare quando ho finito di modificarlo?

Edit: Ho provato ad utilizzare le GetFileAttributes e SetFileAttributes per verificare FILE_ATTRIBUTE_READONLY, sperando che potrei usare quella bandiera per determinare quando il file non è stato estratto, e poi di check it out (dal disinserimento quella bandiera di controllare, poi impostazione per fare il check in). Nessuna fortuna lì; il file appare sempre come non di sola lettura.

È stato utile?

Soluzione

Bene per effettuare il check-in / check-out di un file è necessario utilizzare il seguente codice:

SPSite oSite = new SPSite ("http://<sitename>/");
SPWeb oWeb = oSite.OpenWeb(); 
SPList oList = oWeb.Lists["Shared Documents"];
SPListItem oListItem = oList.Items[0]; //taking the first list item
oListItem.File.CheckOut();
oListItem["Name"] = "xyz";           
oListItem.Update();
oListItem.File.CheckIn("file name has been changed");

Se avete bisogno di fare il check-in / check-out tramite il servizio Web di SharePoint allora dovreste dare un'occhiata al codice sul blog di Brad McCable su Windows Sharepoint Services Web Service Esempio .

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top