用户注册



邮箱:

密码:

用户登录


邮箱:

密码:
记住登录一个月忘记密码?

发表随想


还能输入:200字
云代码 - c#代码库

上传文件到SharePoint文档库

2016-08-14 作者: 小章举报

[c#]代码库

/*
SharePoint的文档库是根据数据库虚拟出来的,以HTTP形式呈现,因要创建一个页面单独实现上传功能,故对于其存储和呈现机制进行了学习和研究,不过网络上相关资料还真是很少。SharePoint个人觉得还是比较适合不需要进行复杂逻辑功能的二次开发的网站构建,即适合一般基于office组件的功能门户,能够极大提高效率。
http://download.csdn.net/detail/keai1365/207303
以下代码能够实现往文档库下层目录上传文件的功能,主要还是参考网络上其他文章
*/

using System.IO;
using Microsoft.SharePoint;
using System.Web;
 
namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            string fileName = @"C:\Documents and Settings\Administrator\桌面\word_test.docx";
            FileInfo myfile = new FileInfo(fileName);               
            byte[] fileContents = new byte[int.Parse(myfile.Length.ToString())];
            FileStream fs=File.OpenRead(fileName);
            int n = fs.Read(fileContents, 0, int.Parse(myfile.Length.ToString()));
            string result = Program.UploadDocument("word_test.docx", fileContents, @"http://zpkxv7t0p3xxqyg:47024/DocLib1/New_Test");           
        }
 
        public static string UploadDocument(string fileName, byte[] fileContents, string pathFolder)
        {
            if (fileContents == null)
                return "Null Attachment";
            try
            {
                int iStartIndex = pathFolder.LastIndexOf("/");               
                string sitePath = pathFolder.Remove(iStartIndex);
                string folderName = string.Empty;
 
                if (sitePath.LastIndexOf("/") > 6)
                {
                    int sec_iStartIndex = sitePath.LastIndexOf("/");
                    // System.Console.WriteLine(sec_iStartIndex);
                    sitePath = pathFolder.Remove(sitePath.LastIndexOf("/"));
                    folderName = pathFolder.Substring(sec_iStartIndex + 1);
                  //  System.Console.WriteLine(folderName);
                    // System.Console.WriteLine(folderName);
                    // System.Console.WriteLine(sitePath);
                }
                //   string folderName = pathFolder.Substring(iStartIndex + 1);
                //   System.Console.WriteLine(folderName);
                else
                {
                    folderName = pathFolder.Substring(iStartIndex + 1);
                   // System.Console.WriteLine(folderName);
                }
                SPSite site = new SPSite(sitePath);
                SPWeb web = site.OpenWeb();
                 
                
                SPFolder folder = web.GetFolder(folderName);
 
                string fileURL = fileName;
                 
                folder.Files.Add(fileURL, fileContents);
 
                if (folder.Files[fileURL].CheckedOutBy.Name != "")
                {
                    folder.Files[fileURL].CheckIn("File Checked In");
                }
                return "File added successfully!";
            }
            catch (System.Exception ex)
            {
                return ex.Source + ":" + ex.Message;
            }
        }
    }
}


网友评论    (发表评论)

共1 条评论 1/1页

发表评论:

评论须知:

  • 1、评论每次加2分,每天上限为30;
  • 2、请文明用语,共同创建干净的技术交流环境;
  • 3、若被发现提交非法信息,评论将会被删除,并且给予扣分处理,严重者给予封号处理;
  • 4、请勿发布广告信息或其他无关评论,否则将会删除评论并扣分,严重者给予封号处理。


扫码下载

加载中,请稍后...

输入口令后可复制整站源码

加载中,请稍后...