Beispiel #1
0
        private void ThreadUploadFile(object filename)
        {
            if (filename is string fileName)
            {
                System.IO.FileInfo fileInfo = new System.IO.FileInfo(fileName);
                // 开始正式上传,关于三级分类,下面只是举个例子,上传成功后去服务器端寻找文件就能明白
                OperateResult result = integrationFileClient.UploadFile(
                    fileName,            // 需要上传的原文件的完整路径,上传成功还需要个条件,该文件不能被占用
                    fileInfo.Name,       // 在服务器存储的文件名,带后缀,一般设置为原文件的文件名
                    "Files",             // 第一级分类,指示文件存储的类别,对应在服务器端存储的路径不一致
                    "Personal",          // 第二级分类,指示文件存储的类别,对应在服务器端存储的路径不一致
                    "Admin",             // 第三级分类,指示文件存储的类别,对应在服务器端存储的路径不一致
                    "这个文件非常重要",          // 这个文件的额外描述文本,可以为空("")
                    "张三",                // 文件的上传人,当然你也可以不使用
                    UpdateReportProgress // 文件上传时的进度报告,如果你不需要,指定为NULL就行,一般文件比较大,带宽比较小,都需要进度提示
                    );

                // 切换到UI前台显示结果
                Invoke(new Action <OperateResult>(operateResult =>
                {
                    if (result.IsSuccess)
                    {
                        MessageBox.Show("文件上传成功!");
                    }
                    else
                    {
                        // 失败原因多半来自网络异常,还有文件不存在,分类名称填写异常
                        MessageBox.Show("文件上传失败:" + result.ToMessageShowString());
                    }
                }), result);
            }
        }
Beispiel #2
0
        private void ThreadUploadFile(object filename)
        {
            if (filename is string fileName)
            {
                System.IO.FileInfo fileInfo = new System.IO.FileInfo(fileName);
                // 开始正式上传,关于三级分类,下面只是举个例子,上传成功后去服务器端寻找文件就能明白
                // start to upload file to server , u shold specify the catgray about the file
                OperateResult result = integrationFileClient.UploadFile(
                    fileName,                                           // 需要上传的原文件的完整路径,上传成功还需要个条件,该文件不能被占用
                    fileInfo.Name,                                      // 在服务器存储的文件名,带后缀,一般设置为原文件的文件名,当然您也可以重新设置名字
                    textBox_upload_factory.Text,                        // 第一级分类,指示文件存储的类别,对应在服务器端存储的路径不一致
                    textBox_upload_group.Text,                          // 第二级分类,指示文件存储的类别,对应在服务器端存储的路径不一致
                    textBox_upload_id.Text,                             // 第三级分类,指示文件存储的类别,对应在服务器端存储的路径不一致
                    textBox_upload_tag.Text,                            // 这个文件的额外描述文本,可以为空("")
                    textBox_upload_name.Text,                           // 文件的上传人,当然你也可以不使用,可以为空("")
                    UpdateReportProgress                                // 文件上传时的进度报告,如果你不需要,指定为NULL就行,一般文件比较大,带宽比较小,都需要进度提示
                    );

                // 切换到UI前台显示结果
                // Show Upload Result , Because it may be failed
                Invoke(new Action <OperateResult>(operateResult =>
                {
                    button3.Enabled = true;
                    if (result.IsSuccess)
                    {
                        // file upload success
                        MessageBox.Show("文件上传成功!");
                    }
                    else
                    {
                        // 失败原因多半来自网络异常,还有文件不存在,分类名称填写异常
                        // mostly failed by network exception, like offline
                        MessageBox.Show("文件上传失败:" + result.ToMessageShowString( ));
                    }
                }), result);
            }
        }