使用SharePoint 2007 Web Service上传文件到文档库

简介:

SharePoint 2010中有了全新的客户端模型,给我们在客户端操作SharePoint对象提供了很大的方便,但是在SharePoint 2007中我们可以使用的方式就比较有限,Web Service是我们最常用的一种方式,SharePoint本身提供了很多web Service,比如Lists.asmx如下图:

image

 

我们下面就接触sharepoint提供的web service来实现上传文件

1. 我们要上传的文件如下图:

clip_image002

clip_image004

2. 下图为要上传的文档库:

clip_image006

3. 实现代码如下:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using MOSSUploadDemo1.*****;
using System.IO;
using System.Net;

namespace MOSSUploadDemo1
{
    class Program
    {
        static void Main(string[] args)
        {
            string sourceFilePath = "c:\\cpu.txt";
            string wsUrl="http://************/_vti_bin/copy.asmx";
            string desPath="http://*******/DocLib1/filename4.txt";
            string userName="****";
            string password="*****";
            string domain="*****";
            
            byte[] filebyte = StreamFile(sourceFilePath);
            UploadFile(filebyte,wsUrl,desPath,userName,password,domain);
        }

        private static void UploadFile(byte[] fileData,string wsUrl,string desPath,string userName,string password,string domain)
        {
            var copy = new ****.Copy
            {
                Url = wsUrl,
                Credentials = new NetworkCredential(userName, password, domain)
               
            };

            string destinationUrl = desPath;
            string[] destinationUrls = { destinationUrl };
            var info1 = new FieldInformation
            {
                DisplayName = "Title",
                InternalName = "Title",
                Type = FieldType.Text,
                Value = "New Title"
            };
            FieldInformation[] info = { info1 };
            var copyResult = new CopyResult();
            CopyResult[] copyResults = { copyResult };
            copy.CopyIntoItems(destinationUrl, destinationUrls, info, fileData, out copyResults);
        }

        private static byte[] StreamFile(string filename)
        {
            FileStream fs = new FileStream(filename, FileMode.Open, FileAccess.Read);          
            byte[] ImageData = new byte[fs.Length];           
            fs.Read(ImageData, 0, System.Convert.ToInt32(fs.Length));           
            fs.Close();
            return ImageData;
          
        }
    }
}

4. 程序远行后,结果如下图:

clip_image008

clip_image010

 

本文转自Justin博客园博客,原文链接:http://www.cnblogs.com/carysun/archive/2010/12/30/moss-upload-webservice.html,如需转载请自行联系原作者

 

相关文章
|
2月前
在 CRM WebClient UI Attachment 区域,创建支持 Web Service 的 Word 文档
在 CRM WebClient UI Attachment 区域,创建支持 Web Service 的 Word 文档
23 0
|
2月前
|
前端开发 JavaScript 区块链
连接区块链节点的 JavaScript 库 web3.js
连接区块链节点的 JavaScript 库 web3.js
31 2
|
4月前
|
XML 编解码 前端开发
【web组件库系列】封装自己的字体图标库
【web组件库系列】封装自己的字体图标库
59 0
|
2天前
|
机器学习/深度学习 JSON 编译器
C++ 资源大全:标准库、Web框架、人工智能等 | 最全整理
C++ 资源列表,内容包括: 标准库、Web应用框架、人工智能、数据库、图片处理、机器学习、日志、代码分析等
15 1
|
15天前
|
中间件 Go API
Golang深入浅出之-Go语言标准库net/http:构建Web服务器
【4月更文挑战第25天】Go语言的`net/http`包是构建高性能Web服务器的核心,提供创建服务器和发起请求的功能。本文讨论了使用中的常见问题和解决方案,包括:使用第三方路由库改进路由设计、引入中间件处理通用逻辑、设置合适的超时和连接管理以防止资源泄露。通过基础服务器和中间件的代码示例,展示了如何有效运用`net/http`包。掌握这些最佳实践,有助于开发出高效、易维护的Web服务。
28 1
|
19天前
|
开发框架 前端开发 数据库
Python从入门到精通:3.3.2 深入学习Python库和框架:Web开发框架的探索与实践
Python从入门到精通:3.3.2 深入学习Python库和框架:Web开发框架的探索与实践
|
2月前
|
存储 前端开发 JavaScript
强烈推荐一个Python库!制作Web Gui也太简单了!
强烈推荐一个Python库!制作Web Gui也太简单了!
|
2月前
|
存储 缓存 算法
关于 Service Worker 和 Web 应用对应关系的讨论
关于 Service Worker 和 Web 应用对应关系的讨论
18 0
|
3月前
|
Java API Apache
Apache CXF生成WebService的客户端
Apache CXF生成WebService的客户端
|
3月前
|
SQL 开发框架 .NET
ASP.NET WEB+EntityFramework数据持久化——考核练习库——1、用户管理系统(考点:查询列表、增加、删除)
ASP.NET WEB+EntityFramework数据持久化——考核练习库——1、用户管理系统(考点:查询列表、增加、删除)
72 0