2010-09-29 8 views
1

Nous travaillons sur une mission pour créer une application Web utilisant SharePoint 2010, qui est totalement nouvelle pour nous tous.SharePoint 2010

Mon défi consiste à créer un formulaire de téléchargement de fichier. J'ai utilisé le concepteur SharePoint pour faire glisser les commandes texbox et bouton de téléchargement à partir de la boîte à outils ASP.NET. Je ne sais pas quoi faire ensuite parce que j'ai besoin des fichiers pour aller où je veux.

Voici le code que j'ai pour le contrôle que je palced sur la page:

<form id="form1" runat="server"> 
<asp:FileUpload runat="server" id="FileUpload1" /><br /> 
<br /> 
<asp:Button runat="server" Text="Upload" id="Button1" Width="88px" /> 
</form> 
+0

Où souhaitez-vous que les fichiers se déplacent? Téléchargez-vous des documents? – Shaneo

Répondre

0

Cette routine va télécharger un seul fichier en supposant que vous avez mis en place le contrôle FileUpload sur votre page. la routine obtient le nom de fichier à partir du contrôle FileUpload et l'ajoute à une liste SharePoint:

protected void UploadButton_Click(object sender, EventArgs e) 
    //================================================= 
    // upload the file selected in the upload button to the library 
    // 
    //================================================= 
    { 
     string docLibName = "/documents/Forms/AllItems.aspx"; 

     if (FileUpload.HasFile) 
     { 
      try 
      { 
       int orderID = Convert.ToInt32(ViewState["OrderID"].ToString()); 
       string status = ddlDocumentStatus.SelectedValue; 
       string docType = ddlDocumentType.SelectedValue; 

       // Read the file contents into a byte stream 
       string filename = FileUpload.FileName; 
       byte[] contents = new byte[FileUpload.FileContent.Length]; 
       System.IO.Stream myStream; 
       int fileLen = FileUpload.PostedFile.ContentLength; 
       myStream = FileUpload.FileContent; 
       myStream.Read(contents, 0, fileLen); 

       // Upload the file to "Documents" Library 
       using (SPSite oSite = new SPSite(_siteURL)) 
       using (SPWeb oWeb = oSite.OpenWeb()) 
       { 
        docLibName = _siteURL + docLibName; 

        SPWeb site = new SPSite(docLibName).OpenWeb(); 

        // Copy the file to the sharepoint library 
        SPFolder myLibrary = oWeb.Folders["Documents"]; 

        // try checking out the file, if it doesn't exist, create it: 
        SPFile spfile = null; 

        try 
        { 
         spfile = oWeb.GetFile(_siteURL + "/Documents/" + filename); 

         if (spfile.Exists) 
         { 
          spfile.CheckOut(); 
          myLibrary.Files.Add(filename, myStream, true); 
         } 
         else // create a new document 
         { 
          spfile = myLibrary.Files.Add(filename, myStream, true); 
         } 

         SPListItem document = spfile.Item; 
         // Copy the metadata to the document 
         //spfile.Item; 

         // update the metadata for the document here 

         document["Columns Name"] = some_string_value; 
         document["Document Type"] = docType; 

         myLibrary.Update(); 
         document.Update(); 
         spfile.CheckIn("Document updated on " + DateTime.Today.ToString()); 
        } 
        catch (Exception ex) 
        { 
         string errorMessage = ex.Message; 
        } 

        // update the sharepoint list 
        SPList docLib = oWeb.Lists["Documents"]; 
        AddDocuments(orderID, docLib); 
        lblDocumentMessage.Text = "Document uploaded!"; 
       }// using - Disposes Site and web 
      }// try 
      catch (Exception ex) 
      { 
       string errorMessage = ex.Message; 
       lblDocumentMessage.Text = "Document upload error: " + errorMessage; 
      } 
     } 
    }