zoukankan      html  css  js  c++  java
  • D365,实现批量上传和下载文件的工具(二)

    D365中我们经常面临一个问题,附件太多,想批量上传下载。

    下面讲解下批量上传下载工具的下载功能部分,如有需要更多源代码,请下方留言提供联系方式。

    1.实现功能,界面未优化;

    根据创建用户下载特定主档数据的附件,这里大家可以根据实际应用需求来设置下载条件,这里不做展开;

    2.关键代码;

    2.1 将文件流写入本地文件

     static public void SaveToDisk(byte[] bytes, string saveFullPath)
            {
                var fullPath = Path.GetDirectoryName(saveFullPath);
                //如果没有此文件夹,则新建
                if (!Directory.Exists(fullPath))
                {
                    Directory.CreateDirectory(fullPath);
                }
                //创建文件,返回一个 FileStream,它提供对 path 中指定的文件的读/写访问。
                using (FileStream stream = File.Create(saveFullPath))
                {
                    //将字节数组写入流
                    stream.Write(bytes, 0, bytes.Length);
                    stream.Close();
                }
            }

    2.2 将文件流转成byte数组传出

    this.streamToBytes(DocumentManagement::getAttachmentStream(docuRef));

     public System.Byte[] streamToBytes(System.IO.Stream _stream)
     {
            System.Byte[] bytes = new System.Byte[_stream.Length]();
            _stream.Read(bytes, 0, bytes.Length);
            // 设置当前流的位置为流的开始
            _stream.Seek(0, System.IO.SeekOrigin::Begin);
            return bytes;
     }
    2.3 请使用soap调用;
  • 相关阅读:
    dispatchEvent 的应用
    sql语句中日期时间格式化查询
    Dotfuscator Professional Edition 4.9.7500.9484 混淆工具破解版+使用教程
    多表链接 Left join
    多线程计时器
    C#数据库事务原理及实践
    用户sa 登录失败。原因: 该帐户的密码必须更改 sql2008
    Application.DoEvents()和多线程
    C#中DataSet和DataReader的区别
    ROW_NUMBER() OVER函数的基本用法
  • 原文地址:https://www.cnblogs.com/alfred-cn/p/D365.html
Copyright © 2011-2022 走看看