zoukankan      html  css  js  c++  java
  • 一起谈.NET技术,使用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

  • 相关阅读:
    当前form窗体随系统屏幕变化
    js类型检测
    js和jquery中的遍历对象和数组(forEach,map,each)
    学了display:flex垂直居中容易多了
    php发送get和post请求
    php输出日志的实现
    php每天自动备份数据库
    windows计划任务
    Css Sprite 图片等比缩放图片大小
    使用js编写一个简单的运动框架
  • 原文地址:https://www.cnblogs.com/waw/p/2163083.html
Copyright © 2011-2022 走看看