SharePoint 2010 - PullRequest
       3

SharePoint 2010

1 голос
/ 29 сентября 2010

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

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

Вот код, который у меня есть для элемента управления, который я поместил на странице:

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

1 Ответ

0 голосов
/ 04 июня 2012

Эта подпрограмма загрузит один файл, если на вашей странице реализован элемент управления 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;
            }
        }
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...