versione del file Caricamento - Object Model client
-
16-10-2019 - |
Domanda
Ho una biblioteca con i file di versione. Ho versionato file preparati per l'upload (1 Versione = 1 file). Come faccio a creare nuova versione? Posso solo impostare la proprietà contenuti del file e aggiornarlo? Si prega di condividere le tue experinces, grazie
modifica: ho qualcosa di simile a questo:
File1|v1
File1|v2
File1|v4
File2|v2
File2|v5
Così ho manca versioni. E 'possibile versione del file set quando uploading (campo di articolo?)? In caso contrario, io riempirò versione con successive versioni precedenti / mancante, ad esempio File2 | v1 sarà riempito con File2 |. V2
Soluzione
Non so come assegnare a livello di codice il numero di versione, ma se è OK per lasciare SharePoint assegnare il numero di versione ...
Con la versione server del metodo:
SPFileCollection.Add(urlOfFile, fileContent, overwrite);
se si passa in sovrascrittura = true e la biblioteca documento è delle versioni acceso, penso che creerà una nuova versione del documento. (Questo è il comportamento attraverso il browser.) Suppongo che il Client versione Object Model del metodo si comporterebbe allo stesso modo.
FileCreationInformation fci = new FileCreationInformation();
fci.Url = urlOfFile;
fci.Content = fileContent;
fci.Overwrite = true;
folder.files.Add(fci);
Quindi, fino a quando si caricare i file nel corretto ordine delle loro versioni, SharePoint dovrebbe creare ogni versione per voi.
Altri suggerimenti
Ecco un esempio di codice poco che simulerà delle versioni di un file
public File changeDocumentVersion(string version,File file){
string [] versions = version.Split(new char[]{'.'});
int minor = Int32.Parse(versions[1]);
int major = Int32.Parse(versions[0]);
for (int i = 1; i < major; i++)
{
file.CheckOut();
file.CheckIn("versioning", CheckinType.MajorCheckIn);
}
for (int i = 0; i < minor; i++)
{
file.CheckOut();
file.CheckIn("versioning", CheckinType.MinorCheckIn);
file.Context.Load(file);
file.Context.ExecuteQuery();
}
return file;
}
Fino a quando si è abilitato il controllo delle versioni (che si trova sotto la lista / impostazioni della libreria, quindi versioning) abilitata SP si prenderà cura del versioning per voi.