• 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调用;
  • 相关阅读:
    顺流交易中,母公司销售部分存货,为什么收入也是全额抵消?
    借:递延所得税资产(负债)贷:所得税费用
    可变回报与固定回报
    或有对价
    可以税前扣除什么意思
    应收账款保理为什么是筹资活动
    外币报表折算差额计入其他综合收益
    分配现金股利为什么是筹资
    spring的@EnableAspectJAutoproxy注解
    Spring的@DeclareParents注解
  • 原文地址:https://www.cnblogs.com/alfred-cn/p/D365.html
Copyright © 2020-2023  润新知