SPFileCollection.Add-Methode (String, Byte[], SPUser, SPUser, DateTime, DateTime)
Erstellt eine Datei in der Auflistung unter Verwendung des angegebenen URL, ein Bytearray, das den Inhalt einer Datei Benutzerobjekte enthält, die Benutzer, der Erstellung oder letzten Änderung der Datei und DateTime -Werte, die angeben darstellen, wenn sie haben.
Namespace: Microsoft.SharePoint
Assembly: Microsoft.SharePoint (in Microsoft.SharePoint.dll)
Syntax
'Declaration
Public Function Add ( _
urlOfFile As String, _
file As Byte(), _
createdBy As SPUser, _
modifiedBy As SPUser, _
timeCreated As DateTime, _
timeLastModified As DateTime _
) As SPFile
'Usage
Dim instance As SPFileCollection
Dim urlOfFile As String
Dim file As Byte()
Dim createdBy As SPUser
Dim modifiedBy As SPUser
Dim timeCreated As DateTime
Dim timeLastModified As DateTime
Dim returnValue As SPFile
returnValue = instance.Add(urlOfFile, _
file, createdBy, modifiedBy, timeCreated, _
timeLastModified)
public SPFile Add(
string urlOfFile,
byte[] file,
SPUser createdBy,
SPUser modifiedBy,
DateTime timeCreated,
DateTime timeLastModified
)
Parameter
urlOfFile
Typ: System.StringDie Site-relativen URL der Datei.
file
Typ: []Ein Bytearray, das die Datei enthält.
createdBy
Typ: Microsoft.SharePoint.SPUserDer Benutzer, der die Datei erstellt hat.
modifiedBy
Typ: Microsoft.SharePoint.SPUserDer Benutzer, der die Datei zuletzt geändert hat.
timeCreated
Typ: System.DateTimeDas Datum und die Uhrzeit der Erstellung die Datei. Sie müssen zum Festlegen der Uhrzeit erstellt auch legen Sie diesen Wert über den Indexer des Listenelements, das mit der Datei verknüpft ist und rufen Sie die Methode Update .
timeLastModified
Typ: System.DateTimeDas Datum und die Uhrzeit der letzten die Datei Änderung. Um die Zeit der letzten Änderung, müssen Sie auch legen Sie diesen Wert über den Indexer des Listenelements, das mit der Datei verknüpft ist und rufen Sie die Methode Update .
Rückgabewert
Typ: Microsoft.SharePoint.SPFile
Die neu hinzugefügte Datei.
Hinweise
Diese Methode schlägt fehl, eine Datei zu überschreiben, wenn die Datei bereits vorhanden ist. Wenn der Benutzer den Befehl ausführen, die nicht Mitglied der Administrator-Websitegruppe ist, gilt der SPUser -Objekt und DateTime -Wert nicht.
Diese Add -Methode ist für eine Dokumentbibliothek der Site; Wenn Sie mit einer Dokumentbibliothek Bereich verwenden, schlägt der Aufruf jedoch mit der Fehlermeldung "Zugriff verweigert". Wenn Sie nicht die letzten vier Parameter in der Methode Add einschließen, wird die Datei in der Dokumentbibliothek Bereich hinzugefügt, aber die Zeiten Autor und das Dokument kann nicht geändert werden.
Beispiele
Im folgenden Codebeispiel wird kopiert die Dateien in der oberste Ordner in einer Dokumentbibliothek in einer Website in die Dokumentbibliothek einer anderen Website. Das Beispiel erhält die Zeit erstellt oder zuletzt bearbeitet die Werte der ursprünglichen Bibliothek.
Dim site As SPSite = SPContext.Current.Site
Try
Dim srcFolder As SPFolder = site.AllWebs("MySourceWebSite").GetFolder("MySourceDocLib")
Dim destFiles As SPFileCollection = site.AllWebs("MyDestinationWebSite").GetFolder("MyDestinationDocLib").Files
Dim srcFile As SPFile
For Each srcFile In srcFolder.Files
Dim destURL As String = destFiles.Folder.Url + "/" + srcFile.Name
Dim binFile As Byte() = srcFile.OpenBinary()
Dim userAuthor As SPUser = srcFile.Author
Dim userModified As SPUser = srcFile.ModifiedBy
Dim created As System.DateTime = srcFile.TimeCreated
Dim modified As System.DateTime = srcFile.TimeLastModified
Dim newFile As SPFile = destFiles.Add(destURL, binFile, userAuthor, userModified, created, modified)
Dim fileItem As SPListItem = newFile.Item
fileItem("Created") = created
fileItem("Modified") = modified
fileItem.Update()
Next srcFile
Finally
site.Dispose()
End Try
SPSite oSiteCollection = SPContext.Current.Site;
SPFolder oFolder = oSiteCollection.AllWebs["SourceWebSite"].GetFolder("SourceDocLib");
SPFileCollection collFiles = oSiteCollection.AllWebs["DestWebSite"].GetFolder("DestDocLib").Files;
foreach (SPFile oFile in collFiles.Files)
{
string strDestUrl = collFiles.Folder.Url + "/" + srcFile.Name;
byte[] binFile = oFile.OpenBinary();
SPUser oUserAuthor = oFile.Author;
SPUser oUserModified = oFile.ModifiedBy;
System.DateTime dtCreated = oFile.TimeCreated;
System.DateTime dtModified = oFile.TimeLastModified;
SPFile oFileNew = collFiles.Add(strDestUrl, binFile, oUserAuthor, oUserModified, dtCreated, dtModified);
SPListItem oListItem = oFileNew.Item;
oListItem["Created"] = dtCreated;
oListItem["Modified"] = dtModified;
oListItem.Update();
}