2010-09-29 100 views
1

我们正在开展一项使用SharePoint 2010创建Web应用程序的任务,这对我们所有人来说都是全新的。SharePoint 2010

我的挑战是创建一个文件上传表单。我使用SharePoint设计器从ASP.NET工具框中拖动上传texbox和按钮控件。我不知道下一步该怎么做,因为我需要这些文件去我想要的地方。

这里是我有我的页面上的地点理想的控制代码:

<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

您想要文件去哪里?你正在上传文件吗? – Shaneo 2010-09-30 11:10:48

回答

0

这个程序将上传单个文件假设你已经实现了你的页面上的FileUpload控件。该例程从FileUpload控件获取文件名并将其添加到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; 
      } 
     } 
    }