예제 #1
0
        public void TestCreateStorageFile()
        {
            string        sourceFilePath = @"D:\我的case\小布\鋁門窗\SVN上傳\trunk\doc\規格說明書附件.docx";
            FileInfo      fileInfo       = new FileInfo(sourceFilePath);
            DirectoryInfo dir            = m_StorageFileService.GetStorageDirectory(FolderType.UPLOAD_FOLDER, true);
            string        newFileName    = Guid.NewGuid().ToString() + fileInfo.Extension;
            string        destFileName   = Path.Combine(dir.FullName, newFileName);

            File.Copy(sourceFilePath, destFileName);

            StorageFileVO storageFileVO = new StorageFileVO();

            storageFileVO.SourceUri   = fileInfo.FullName;
            storageFileVO.CurrentPath = destFileName;
            storageFileVO.FileName    = fileInfo.Name;
            storageFileVO.DisplayName = fileInfo.Name;
            storageFileVO.FileSize    = fileInfo.Length;
            storageFileVO.SourceType  = StorageFileVO.StorageSourceType.Post;
            storageFileVO.SourceId    = 1;
            storageFileVO.CreatedBy   = "admin";
            storageFileVO.UpdatedBy   = "admin";
            storageFileVO.CreatedDate = DateTime.Now;
            storageFileVO.UpdatedDate = DateTime.Now;
            m_StorageFileService.CreateStorageFile(storageFileVO);
        }
예제 #2
0
        /// <summary>
        /// 更新實體存放資料
        /// </summary>
        /// <param name="storageFileVO">被更新的實體存放資料</param>
        /// <returns>更新後的實體存放資料</returns>
        public StorageFileVO UpdateStorageFile(StorageFileVO storageFileVO)
        {
            //檔案搬移到public資料夾
            storageFileVO             = StorageHelper.RemoveStorageFile(FolderType.PUBLIC_FOLDER, storageFileVO);
            storageFileVO.IsTemporary = false;

            return(StorageFileDao.UpdateStorageFile(storageFileVO));
        }
예제 #3
0
        /// <summary>
        /// 新增實體存放資料
        /// </summary>
        /// <param name="storageFileVO">被新增的實體存放資料</param>
        /// <returns>新增後的實體存放資料</returns>
        public StorageFileVO CreateStorageFile(StorageFileVO storageFileVO)
        {
            //檔案搬移到public資料夾
            storageFileVO             = StorageHelper.RemoveStorageFile(FolderType.PUBLIC_FOLDER, storageFileVO);
            storageFileVO.IsTemporary = false;

            storageFileVO = StorageFileDao.CreateStorageFile(storageFileVO);
            if (storageFileVO.SortNo == 0)
            {
                storageFileVO.SortNo = storageFileVO.StorageFileId;
                storageFileVO        = StorageFileDao.UpdateStorageFile(storageFileVO);
            }
            return(storageFileVO);
        }
예제 #4
0
        /// <summary>
        /// 搬移實體檔案
        /// </summary>
        /// <param name="folderType">資料夾類型</param>
        /// <param name="storageFileVO">實體存放資料</param>
        /// <returns>搬移後的實體存放資料</returns>
        public StorageFileVO RemoveStorageFile(FolderType folderType, StorageFileVO storageFileVO)
        {
            DirectoryInfo dir = GetStorageDirectory(folderType, true);

            if (File.Exists(storageFileVO.CurrentPath))
            {
                string newFileName  = Guid.NewGuid().ToString() + new FileInfo(storageFileVO.CurrentPath).Extension;
                string destFileName = Path.Combine(dir.FullName, newFileName);
                m_Log.Debug("============搬移實體檔案============");
                m_Log.Debug("CurrentPath = " + storageFileVO.CurrentPath);
                m_Log.Debug("destFileName = " + destFileName);
                File.Copy(storageFileVO.CurrentPath, destFileName);
                DeleteFile(storageFileVO.CurrentPath);
                storageFileVO.CurrentPath = destFileName;
            }

            return(storageFileVO);
        }
예제 #5
0
 /// <summary>
 /// 刪除實體存放資料
 /// </summary>
 /// <param name="storageFileVO">被刪除的實體存放資料</param>
 public void DeleteStorageFile(StorageFileVO storageFileVO)
 {
     StorageHelper.DeleteFile(storageFileVO.CurrentPath);
     StorageFileDao.DeleteStorageFile(storageFileVO);
 }
예제 #6
0
 /// <summary>
 /// 刪除實體存放資料
 /// </summary>
 /// <param name="storageFileVO">被刪除的實體存放資料</param>
 public void DeleteStorageFile(StorageFileVO storageFileVO)
 {
     NHibernateDao.Delete(storageFileVO);
 }
예제 #7
0
        /// <summary>
        /// 更新實體存放資料
        /// </summary>
        /// <param name="storageFileVO">被更新的實體存放資料</param>
        /// <returns>更新後的實體存放資料</returns>
        public StorageFileVO UpdateStorageFile(StorageFileVO storageFileVO)
        {
            NHibernateDao.Update(storageFileVO);

            return(storageFileVO);
        }
예제 #8
0
        /// <summary>
        /// 新增實體存放資料
        /// </summary>
        /// <param name="storageFileVO">被新增的實體存放資料</param>
        /// <returns>新增後的實體存放資料</returns>
        public StorageFileVO CreateStorageFile(StorageFileVO storageFileVO)
        {
            NHibernateDao.Insert(storageFileVO);

            return(storageFileVO);
        }