コード例 #1
0
        public string Rename()
        {
            var fileManageResponse = new FileManageResponse();

            fileManageResponse.NewName = NewName;
            var old = string.Empty;

            if (FileType == _folderType)
            {
                var count = _fileServices.GetFolderByName(Folder, NewName).Count();
                if (count > 0)
                {
                    fileManageResponse.Code  = 1;
                    fileManageResponse.Error = NewName + " 已经存在";
                    return(fileManageResponse.SerializeObject());
                }
                var url = UpdateFolder(ref old).Url;
                fileManageResponse.NewPath = url;
                var dirInfo = new DirectoryInfo(Constant.Server.MapPath("~/client/" + old));
                Directory.Move(Constant.Server.MapPath("~/client/" + old), Path.Combine(dirInfo.Parent.FullName, NewName));
                var fileInfoNew = new DirectoryInfo(Path.Combine(dirInfo.Parent.FullName, NewName));
            }
            else
            {
                var count = _fileServices.GetFileByName(Folder, NewName).Count();
                if (count > 0)
                {
                    fileManageResponse.Code  = 1;
                    fileManageResponse.Error = NewName + " 已经存在";
                    return(fileManageResponse.SerializeObject());
                }
                var url = UpdateFile(ref old).Url;
                fileManageResponse.NewPath = url;
                var oldPath  = Constant.Server.MapPath(old);
                var fileInfo = new FileInfo(oldPath);
                SFile.Move(oldPath, Path.Combine(fileInfo.Directory.FullName, NewName));
                var fileInfoNew = new FileInfo(Path.Combine(fileInfo.Directory.FullName, NewName));
            }
            fileManageResponse.OldName = Path.GetFileName(old);
            fileManageResponse.OldPath = Folder.ToString();
            fileManageResponse.Error   = "No error";
            return(fileManageResponse.SerializeObject());
        }
コード例 #2
0
        public string Delete()
        {
            FileManageResponse folderInfo = new FileManageResponse()
            {
                Error = "No error",
                Code  = 0
            };

            if (FileType.ToUpper() == _folderType)
            {
                var folder = DeleteFolder(Folder);
                folderInfo.Parent = folder.Parent;
                folderInfo.Path   = folder.Id.ToString();
            }
            else
            {
                var file = DeleteFile(Folder);
                folderInfo.Parent = file.Folder;
                folderInfo.Path   = file.Id.ToString();
            }

            return(folderInfo.SerializeObject());
        }
コード例 #3
0
        public void Add()
        {
            var    file   = Constant.Request.Files[0];
            string path   = Constant.Request["currentpath"];
            var    parant = -1;

            if (path.IsNotNullOrEmpty())
            {
                parant = Convert.ToInt32(path);
            }

            if (parant == -1)
            {
                path = "~/client/" + RoolFolder;
            }
            else
            {
                path = "~/client/" + _fileServices.GetFolderById(parant).Url;
            }
            var count = _fileServices.GetFileByName(Folder, file.FileName).Count();
            var name  = file.FileName;

            if (count > 0)
            {
                name = name + "(" + (count + 1) + ")";
            }
            var saveUrl = Constant.Server.MapPath(path) + "\\" + name;

            file.SaveAs(saveUrl);

            var mFile = new MFile();

            mFile.Url        = path + "\\" + name;
            mFile.Name       = name;
            mFile.Createtime = DateTime.UtcNow;
            mFile.Updatetime = DateTime.UtcNow;
            mFile.Folder     = parant;
            mFile.User       = User;
            mFile.Role       = GetRole();
            mFile.FileType   = Path.GetExtension(name).Replace(".", "").ToLower();

            var info = new FileInfo(saveUrl);

            mFile.Size = info.Length;

            _fileServices.AddFile(mFile);

            var response = new FileManageResponse()
            {
                Error = "No error",
                Name  = Path.GetFileName(name),
                Path  = parant.ToString()
            }.SerializeObject();

            Constant.Response.ContentType     = "text/html";
            Constant.Response.ContentEncoding = Encoding.UTF8;

            System.Web.UI.WebControls.TextBox txt = new System.Web.UI.WebControls.TextBox();
            txt.TextMode = System.Web.UI.WebControls.TextBoxMode.MultiLine;
            txt.Text     = response;

            StringWriter sw = new StringWriter();

            System.Web.UI.HtmlTextWriter writer = new System.Web.UI.HtmlTextWriter(sw);
            txt.RenderControl(writer);

            Constant.Response.Write(sw.ToString()
                                    );
        }