SPFileCollection.Add - Méthode (String, Stream, SPUser, SPUser, DateTime, DateTime)
Crée un fichier dans la collection à l'aide de l'URL spécifiée, un flux de données qui contient le contenu d'un fichier, les objets utilisateur qui représentent les utilisateurs qui ont créé et modifié les valeurs du fichier et DateTime qui spécifient ce moment-là.
Espace de noms : Microsoft.SharePoint
Assembly : Microsoft.SharePoint (dans Microsoft.SharePoint.dll)
Syntaxe
'Déclaration
Public Function Add ( _
urlOfFile As String, _
file As Stream, _
createdBy As SPUser, _
modifiedBy As SPUser, _
timeCreated As DateTime, _
timeLastModified As DateTime _
) As SPFile
'Utilisation
Dim instance As SPFileCollection
Dim urlOfFile As String
Dim file As Stream
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,
Stream file,
SPUser createdBy,
SPUser modifiedBy,
DateTime timeCreated,
DateTime timeLastModified
)
Paramètres
urlOfFile
Type : System.StringL'URL relative au site du fichier.
file
Type : System.IO.StreamFlux qui contient le fichier.
createdBy
Type : Microsoft.SharePoint.SPUserL'utilisateur qui a créé le fichier.
modifiedBy
Type : Microsoft.SharePoint.SPUserL'utilisateur qui a modifié le fichier.
timeCreated
Type : System.DateTimeLa date et l'heure de création du fichier. Pour définir l'heure de création, vous devez également définir cette valeur par l'intermédiaire de l'indexeur de l'élément de liste qui est associé au fichier et appelez la méthode Update .
timeLastModified
Type : System.DateTimeLa date et l'heure de la dernière modification de fichier. Pour définir l'heure de dernière modifié, vous devez également définir cette valeur par l'intermédiaire de l'indexeur de l'élément de liste qui est associé au fichier et appelez la méthode Update .
Valeur renvoyée
Type : Microsoft.SharePoint.SPFile
Le fichier nouvellement ajouté.
Exemples
L'exemple de code suivant copie chacun des fichiers dans une bibliothèque de documents d'un site Web dans une bibliothèque de documents dans un autre site Web. Conserve l'exemple la fois créé et les valeurs de la bibliothèque d'origine de la dernière modification.
Try
Dim srcSiteCollection As New SPSite("http://SourceSiteCollection")
Try
Dim srcWebSite As SPWeb = srcSiteCollection.AllWebs("SourceWebSite")
Dim srcList As SPList = srcWebSite.GetList("SourceWebSite/SourceDocLib")
Dim srcItems As SPListItemCollection = srcList.Items
Dim srcItem As SPListItem
For Each srcItem In srcItems
Dim srcFile As SPFile = srcItem.File
Dim srcStream As Stream = srcFile.OpenBinaryStream()
Dim destinSiteCollection As New SPSite("http://DestinationSiteCollection")
Try
Dim destinWebSite As SPWeb = destinSiteCollection.OpenWeb("DestinationWebSite")
Dim destinList As SPList = destinWebSite.GetList("DestinationWebSite/DestinationDocLib")
Dim destinFiles As SPFileCollection = destinList.RootFolder.Files
Try
Dim destinFile As SPFile = destinFiles.Add(destinList + "/" + srcFile.Name, srcStream, srcFile.Author, srcFile.ModifiedBy, srcFile.TimeCreated, srcFile.TimeLastModified)
Dim destinItem As SPListItem = destinFile.Item
destinItem("Created") = srcFile.TimeCreated
destinItem("Modified") = srcFile.TimeLastModified
destinItem.Update()
Catch Else
End Try
Finally
destinSiteCollection.Dispose()
End Try
Next srcItem
Finally
srcSiteCollection.Dispose()
End Try
Catch Else
End Try
try
{
using (SPSite oSiteCollectionSrc = new SPSite("http://SourceSiteCollection"))
{
SPWeb oWebsiteSrc = oSiteCollectionSrc.AllWebs["SourceWebSite"];
SPList oListSrc = oWebsiteSrc.GetList("SourceWebSite/SourceDocLib");
SPListItemCollection collListItemsSrc = oListSrc.Items;
foreach (SPListItem oListItemSrc in collListItemsSrc)
{
SPFile oFileSrc = oListItemSrc.File;
Stream srcStream = oFileSrc.OpenBinaryStream();
using (SPSite oSiteCollectionDest = new SPSite("http://DestinationSiteCollection"))
{
SPWeb oWebsiteDest = oSiteCollectionDest.OpenWeb("DestinationWebSite");
SPList oListDest = oWebsiteDest.GetList("DestinationWebSite/DestinationDocLib");
SPFileCollection collFilesDest = oListDest.RootFolder.Files;
try
{
SPFile oFileDest = collFilesDest.Add(oListDest + @"/" + oFileSrc.Name, srcStream, oFileSrc.Author, oFileSrc.ModifiedBy, oFileSrc.TimeCreated, oFileSrc.TimeLastModified);
SPListItem oListItemDest = oFileDest.Item;
oListItemDest["Created"] = oFileDest.TimeCreated;
oListItemDest["Modified"] = oFileDest.TimeLastModified;
oListItemDest.Update();
}
catch { }
oWebsiteDest.Dispose();
}
}
oWebsiteSrc.Dispose();
}
}
catch { }
Notes
Certains objets implémentent l'interface IDisposable , et vous devez éviter de conserver ces objets dans la mémoire après que qu'ils ne sont plus nécessaires. Pour plus d'informations sur les bonnes pratiques de codage, consultez Disposing Objects.