(String, Stream, SPUser, SPUser, DateTime, DateTime) del método SPFileCollection.Add
Crea un archivo de la colección utilizando la dirección URL especificada, una secuencia que contiene el contenido de un archivo, los objetos de usuario que representan a los usuarios que han creado y se modificó por última vez el archivo y los valores de DateTime que especifican cuando lo hicieron.
Espacio de nombres: Microsoft.SharePoint
Ensamblado: Microsoft.SharePoint (en Microsoft.SharePoint.dll)
Sintaxis
'Declaración
Public Function Add ( _
urlOfFile As String, _
file As Stream, _
createdBy As SPUser, _
modifiedBy As SPUser, _
timeCreated As DateTime, _
timeLastModified As DateTime _
) As SPFile
'Uso
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
)
Parámetros
urlOfFile
Tipo: System.StringDirección URL relativa del sitio del archivo.
file
Tipo: System.IO.StreamSecuencia que contiene el archivo.
createdBy
Tipo: Microsoft.SharePoint.SPUserEl usuario que creó el archivo.
modifiedBy
Tipo: Microsoft.SharePoint.SPUserEl último usuario que modificó el archivo.
timeCreated
Tipo: System.DateTimeLa fecha y la hora en la que se creó el archivo. Para establecer la hora de crear, también debe establecer este valor mediante el indizador del elemento de lista que está asociado con el archivo y llame al método Update .
timeLastModified
Tipo: System.DateTimeLa fecha y hora de última modificación. Para establecer la hora de última modificada, también debe establecer este valor mediante el indizador del elemento de lista que está asociado con el archivo y llame al método Update .
Valor devuelto
Tipo: Microsoft.SharePoint.SPFile
El archivo recién agregado.
Ejemplos
En el ejemplo de código siguiente se copia cada uno de los archivos en una biblioteca de documentos de un sitio Web en una biblioteca de documentos en otro sitio Web. Las conservas de ejemplo, el tiempo de creación y última modificación los valores de la biblioteca original.
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 { }
Nota
Algunos objetos que implementan la interfaz de IDisposable y se debe evitar mantener estos objetos en la memoria cuando ya no son necesarios. Para obtener información sobre buenas prácticas de codificación, vea Disposing Objects.