使用“.NET研究”SharePoint 2007 Web Service上传文件到文档库

简介:   SharePoint 2010中有了全新的客户端模型,给我们在客户端操作SharePoint对象提供了很大的方便,但是在SharePoint 2007中我们可以使用的方式就比较有限,Web Service是我们最常用的一种方式,SharePoint本身提供了很多web Service,比如Lists.asmx如下图:  我们下面就接触sharepoint提供的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 = " **** " ;
上海闵行企业网站制作n>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上海闵行企业网站设计与制作n> byte上海企业网站制作pan>[] 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

目录
相关文章
|
7天前
|
C#
一个.NET开源、轻量级的运行耗时统计库 - MethodTimer
一个.NET开源、轻量级的运行耗时统计库 - MethodTimer
|
7天前
|
人工智能 自然语言处理 API
适用于 .NET 稳定的官方OpenAI库
适用于 .NET 稳定的官方OpenAI库
|
1月前
|
XML JSON API
ServiceStack:不仅仅是一个高性能Web API和微服务框架,更是一站式解决方案——深入解析其多协议支持及简便开发流程,带您体验前所未有的.NET开发效率革命
【10月更文挑战第9天】ServiceStack 是一个高性能的 Web API 和微服务框架,支持 JSON、XML、CSV 等多种数据格式。它简化了 .NET 应用的开发流程,提供了直观的 RESTful 服务构建方式。ServiceStack 支持高并发请求和复杂业务逻辑,安装简单,通过 NuGet 包管理器即可快速集成。示例代码展示了如何创建一个返回当前日期的简单服务,包括定义请求和响应 DTO、实现服务逻辑、配置路由和宿主。ServiceStack 还支持 WebSocket、SignalR 等实时通信协议,具备自动验证、自动过滤器等丰富功能,适合快速搭建高性能、可扩展的服务端应用。
101 3
|
3月前
|
编解码 前端开发 JavaScript
.NET_web前端框架_layui_栅格布局
【8月更文挑战第27天】
47 4
|
20天前
【Azure App Service】PowerShell脚本批量添加IP地址到Web App允许访问IP列表中
Web App取消公网访问后,只允许特定IP能访问Web App。需要写一下段PowerShell脚本,批量添加IP到Web App的允许访问IP列表里!
|
28天前
|
安全 Java 网络安全
Android远程连接和登录FTPS服务代码(commons.net库)
Android远程连接和登录FTPS服务代码(commons.net库)
23 1
|
7天前
|
开发框架 安全 .NET
.NET使用Moq开源模拟库简化单元测试
.NET使用Moq开源模拟库简化单元测试~
|
7天前
|
API C#
在.NET中使用QuestPDF高效地生成PDF文档
在.NET中使用QuestPDF高效地生成PDF文档
|
1月前
|
网络协议 Unix Linux
一个.NET开源、快速、低延迟的异步套接字服务器和客户端库
一个.NET开源、快速、低延迟的异步套接字服务器和客户端库
|
1月前
|
存储 消息中间件 NoSQL
Redis 入门 - C#.NET Core客户端库六种选择
Redis 入门 - C#.NET Core客户端库六种选择
59 8