예제 #1
0
        protected async void FormSubmit()
        {
            int.TryParse(ParentId, out int parentId);
            model.ParentId = parentId;

            #region  일 업로드 관련 추가 코드 영역
            if (selectedFiles != null && selectedFiles.Length > 0)
            {
                // 파일 업로드
                var file     = selectedFiles.FirstOrDefault();
                var fileName = "";
                int fileSize = 0;
                if (file != null)
                {
                    fileName = file.Name;
                    fileSize = Convert.ToInt32(file.Size);

                    // 첨부 파일 삭제
                    await FileStorageManager.DeleteAsync(model.FileName, "");

                    // 다시 업로드
                    fileName = await FileStorageManager.UploadAsync(file.Data, file.Name, "", true);

                    model.FileName = fileName;
                    model.FileSize = fileSize;
                }
            }
            #endregion

            await UploadRepositoryAsyncReference.EditAsync(model);

            NavigationManagerReference.NavigateTo("/Uploads");
        }
예제 #2
0
        protected async void FormSubmit()
        {
            int.TryParse(ParentId, out int parentId);
            model.ParentId = parentId;

            #region  일 업로드 관련 추가 코드 영역
            if (selectedFiles != null && selectedFiles.Length > 0)
            {
                // 파일 업로드
                var file     = selectedFiles.FirstOrDefault();
                var fileName = "";
                int fileSize = 0;
                if (file != null)
                {
                    fileName = file.Name;
                    fileSize = Convert.ToInt32(file.Size);

                    fileName = await FileStorageManager.UploadAsync(file.Data, file.Name, "", true);

                    model.FileName = fileName;
                    model.FileSize = fileSize;
                }
            }
            #endregion

            foreach (var m in Models)
            {
                m.FileName = model.FileName;
                m.FileSize = model.FileSize;
                await UploadRepositoryAsyncReference.AddAsync(m);
            }

            NavigationManagerReference.NavigateTo("/BriefingLogs");
        }
예제 #3
0
        protected async void CreateOrEditClick()
        {
            #region  일 업로드 관련 추가

            var file     = selectedFiles.FirstOrDefault();
            var fileName = "";
            int fileSize = 0;

            if (file != null)
            {
                //file.Name = $"{DateTime.Now.ToString("yyyyMMddHHmmss")}{file.Name}";
                fileName = file.Name;
                fileSize = Convert.ToInt32(file.Size);
                //await FileUploadServiceReference.UploadAsync(file);

                //[A] 바이트 형태
                //var ms = new MemoryStream();
                //await file.Data.CopyToAsync(ms);    // 파일 데이터를 메모리스트림으로 변환
                //// upload 하기전 memorystream을 byte 배열로 다시변환
                //await FileStorageManager.UploadAsync(ms.ToArray(), file.Name, "", true);

                //[B] Stream형태
                //string folderPath = Path.Combine(WebHostEnvironment.WebRootPath, "files");
                await FileStorageManager.UploadAsync(file.Data, file.Name, "", true);

                Model.FileName = fileName;
                Model.FileSize = fileSize;
            }

            #endregion

            if (!int.TryParse(parentId, out int newParentId))
            {
                newParentId = 0;
            }
            Model.ParentId = newParentId;
            //Model.ParentKey = Model.ParentKey;


            if (Model.Id == 0)
            {
                // Create
                await NoticeRepositoryAsyncReference.AddAsync(Model);

                CreateCallback?.Invoke();  // -> EditCallback
            }
            else
            {
                // Edit
                await NoticeRepositoryAsyncReference.EditAsync(Model);

                await EditCallback.InvokeAsync(true);
            }
            //IsShow = false;
        }
예제 #4
0
        protected async void CreateOrEditClick()
        {
            #region  일 업로드 관련 추가 코드 영역
            if (selectedFiles != null && selectedFiles.Length > 0)
            {
                // 파일 업로드
                var file     = selectedFiles.FirstOrDefault();
                var fileName = "";
                int fileSize = 0;
                if (file != null)
                {
                    //file.Name = $"{DateTime.Now.ToString("yyyyMMddhhmmss")}{file.Name}";
                    fileName = file.Name;
                    fileSize = Convert.ToInt32(file.Size);

                    //[A] byte[] 형태
                    //var ms = new MemoryStream();
                    //await file.Data.CopyToAsync(ms);
                    //await FileStorageManager.UploadAsync(ms.ToArray(), file.Name, "", true);
                    //[B] Stream 형태
                    //string folderPath = Path.Combine(WebHostEnvironment.WebRootPath, "files");
                    await FileStorageManager.UploadAsync(file.Data, file.Name, "", true);

                    Model.FileName = fileName;
                    Model.FileSize = fileSize;
                }
            }
            #endregion

            if (!int.TryParse(parentId, out int newParentId))
            {
                newParentId = 0;
            }
            Model.ParentId  = newParentId;
            Model.ParentKey = Model.ParentKey;

            if (Model.Id == 0)
            {
                // Create
                await UploadRepositoryAsyncReference.AddAsync(Model);

                CreateCallback?.Invoke();
            }
            else
            {
                // Edit
                await UploadRepositoryAsyncReference.EditAsync(Model);

                await EditCallback.InvokeAsync(true);
            }
            //IsShow = false; // this.Hide()
        }