2010-09-29 7 views
1

Мы работаем над назначением для создания веб-приложения с использованием SharePoint 2010, которое является совершенно новым для всех нас.SharePoint 2010

Моя задача - создать форму для загрузки файлов. Я использовал конструктор SharePoint, чтобы перетащить теги для загрузки тексбокса и кнопки из окна инструментария ASP.NET. Я не знаю, что делать дальше, потому что мне нужны файлы, куда я хочу.

Вот код, который я для контроля я palced на странице:

<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

ответ

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; 
      } 
     } 
    } 
Смежные вопросы