如何使用c#从通过局域网连接的本地计算机上传文件到共享点服务器

How to upload a file in share point server from a local machine connected through lan using c#

我真的是这个共享点的新手 stuffs.We 有一个带有管理员帐户的共享点服务器,我通过 ip 和手动共享点端口从我的本地机器连接它。 Nut 我需要编写一个程序,需要将文件从本地计算机上传到共享点服务器到服务器。是否可以使用 winforms ?或者只能在 Web 服务中使用。?

   using (SPSite oSite = new SPSite(sharePointSite))
{
    using (SPWeb oWeb = oSite.OpenWeb())
    {
        if (!System.IO.File.Exists(fileToUpload))
            throw new FileNotFoundException("File not found.", fileToUpload);    



    SPFolder myLibrary = oWeb.Folders[documentLibraryName];

    // Prepare to upload
    Boolean replaceExistingFiles = true;
    String fileName = System.IO.Path.GetFileName(fileToUpload);
    FileStream fileStream = File.OpenRead(fileToUpload);

    // Upload document
    SPFile spfile = myLibrary.Files.Add(fileName, fileStream, replaceExistingFiles);

    // Commit 
    myLibrary.Update();
}

}

尝试使用上面的代码,但我从以下行中得到错误

using (SPSite oSite = new SPSite(sharePointSite))

错误是

"The Web application at http://server:port/ could not be found. Verify that you have typed the URL correctly. If the URL should be serving existing content, the system administrator may need to add a new request URL mapping to the intended application"

我无法上传文件。 但是,如果我在我的本地机器上复制并粘贴相同的 URL,我就可以访问部署在服务器中的共享点,我什至可以从我的本地机器手动上传文件。

如何从连接局域网的本地机器上传文件到sharepoint服务器..??

确保连接到现有网站集。您收到的错误很容易解释,它找不到您指向的网站集。检查您的字符串 sharePointSite 以确保没有拼写错误并且它正在访问正确的根网站集。请记住 SharePoint SPSite = 网站集 SPWeb = 网站集中的网站。

如果我自己没有 运行 的东西,我看不到你的代码中有任何明显的错误,除了确保当你调用 oSite.openweb() 时它是针对网站集中的单个网站.

siteURL = 共享点的主要 URl(例如)“http://10.0.0.14:48487/”;

documentListName = shrepoint 中的任何文件夹(例如)共享文档

documentName = 文件名(例如)sampleword.docx , readme.txt 等

documentStream = 我们要上传的文件的字节格式。

(eg)byte[] bytefile = System.IO.File.ReadAllBytes(filepath+filename);

public static void UploadDocument(string siteURL, string documentListName, string documentListURL,string documentName, byte[] documentStream = null)
    {  

     try
        {
        using (SP.ClientContext clientContext = new SP.ClientContext(siteURL))
        {

            #region"Only if you have credentials"
            NetworkCredential Cred = new NetworkCredential("username", "password");
            clientContext.Credentials = Cred;
            #endregion


            SP.List documentsList = clientContext.Web.Lists.GetByTitle(documentListName);

            var fileCreationInformation = new SP.FileCreationInformation();
            //Assign to content byte[] i.e. documentStream

            fileCreationInformation.Content = documentStream;
            //Allow owerwrite of document

            fileCreationInformation.Overwrite = true;
            //Upload URL

            fileCreationInformation.Url = documentName;

            Microsoft.SharePoint.Client.File uploadFile = documentsList.RootFolder.Files.Add(
                fileCreationInformation);


            uploadFile.ListItemAllFields.Update();
            clientContext.ExecuteQuery();

        }
    }
    catch (Exception ex)
    {
    }
}

}

这对我来说很完美 :) :)