2008-11-10 17 views

Respuesta

7

Puede escribir un código personalizado para hacerlo. Puede usar la API de SharePoint si está en el mismo servidor o usa WebServices

Aquí está el código de muestra suponiendo que conoce la url de la biblioteca de documentos y está cargando el documento a la carpeta raíz. Usted tendrá que añadir Microsoft.SharePoint.dll como referencia a su proyecto ASP.NET

 using (SPSite siteCollection = new SPSite(url)) 
     { 
      using (SPWeb spWeb = siteCollection.OpenWeb()) 
      { 
       SPList spList = spWeb.GetList(url); 

       string fileName = "XXXX"; 
       FileStream fileStream = null; 
       Byte[] fileContent = null; 

       try 
       { 
        string docPath = XXXX; //physical location of the file 
        fileStream = File.OpenRead(docPath + fileName); 
        fileContent = new byte[Convert.ToInt32(fileStream.Length)]; 
        fileStream.Read(fileContent, 0, Convert.ToInt32(fileStream.Length)); 

        spList.RootFolder.Files.Add(spList.RootFolder.Url + "/" + fileName, fileContent, true); 
        spList.Update(); 
       } 
       catch(Exception ex) 
       { 

       } 
       finally 
       { 
        if (fileStream != null) 
        { 
         fileStream.Close(); 
        } 
       } 
      } 
     } 
+0

También puede usar SPFolder.Add (url, Stream, sobrescribir) en lugar de leer todo el archivo en la memoria (lo que puede ocasionar problemas de rendimiento) si planeas cargar archivos grandes) – Marek

2

mirada at this blog puesto. Por Bil Simser.

Parece haber muchas discusiones sobre el uso de servicios web, listas y todo eso solo para cargar un documento. No puede ser tan difícil. Después de pasar un poco de tiempo en Google (Google es su amigo) encontré varios intentos de cargar documentos a través de los comandos HTTP PUT regulares. Aquí está el que finalmente funcionó en una simple y única función: ...

Cuestiones relacionadas