Ejemplo n.º 1
0
        /// <summary>
        /// 分块上传文件添加
        /// </summary>
        /// <param name="folderId"></param>
        /// <param name="fileName"></param>
        /// <param name="file"></param>
        /// <param name="filesize"></param>
        /// <param name="enabled"></param>
        /// <returns></returns>
        public string UplaodeByBlock(string folderId, string filePath, string fileName, byte[] file, int filesize, bool enabled)
        {
            // 检查是否已经存在
            //string result = this.GetId(new KeyValuePair<string, object>(BaseFileEntity.FieldFolderId, folderId), new KeyValuePair<string, object>(BaseFileEntity.FieldFileName, fileName));
            // 检查是否已经存在,加入删除状态为0的条件
            List <KeyValuePair <string, object> > parametersList = new List <KeyValuePair <string, object> >();

            parametersList.Add(new KeyValuePair <string, object>(BaseFileEntity.FieldFolderId, folderId));
            parametersList.Add(new KeyValuePair <string, object>(BaseFileEntity.FieldFileName, fileName));
            parametersList.Add(new KeyValuePair <string, object>(BaseFileEntity.FieldDeletionStateCode, 0));
            string result = this.GetId(parametersList);

            if (!String.IsNullOrEmpty(result))
            {
                // 更新数据
                this.UpdateFile(result, fileName, file);
                //在能够真实模仿C/S中的提示确定信息对话框的B/S版本出来之前,先做如下处理:前面的文件有重复的,打删除标志来处理,因为客户不会闲着没事,老传文件,且服务器都是几百个G的空间
                // 删除数据
                BaseFileManager manager        = new BaseFileManager();
                int             intReturnValue = manager.SetDeleted(result);
                // 添加数据
                BaseFileEntity entity = new BaseFileEntity();
                entity.FolderId = folderId;
                entity.FilePath = filePath;
                entity.FileName = fileName;
                entity.Contents = file;
                entity.FileSize = filesize;
                entity.Enabled  = enabled ? 1 : 0;
                result          = this.AddObject(entity);
            }
            else
            {
                // 添加数据
                BaseFileEntity entity = new BaseFileEntity();
                entity.FolderId = folderId;
                entity.FilePath = filePath;
                entity.FileName = fileName;
                entity.Contents = file;
                entity.FileSize = filesize;
                entity.Enabled  = enabled ? 1:0;
                result          = this.AddObject(entity);
            }
            return(result);
        }