/// <summary> /// 파일 업로드 버튼 클릭 이벤트 처리기 /// </summary> 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 FileStorageManagerReference.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 RepositoryReference.AddAsync(m); } NavigationManagerInjector.NavigateTo("/Replys"); }
/// <summary> /// 삭제 모달 폼에서 현재 선택한 항목 삭제 /// </summary> protected async void DeleteClick() { if (!string.IsNullOrEmpty(model?.FileName)) { // 첨부 파일 삭제 await FileStorageManagerReference.DeleteAsync(model.FileName, "Archives"); } await RepositoryReference.DeleteAsync(this.model.Id); DeleteDialogReference.Hide(); this.model = new Archive(); // 선택했던 모델 초기화 await DisplayData(); // 다시 로드 }
protected async void DownloadBy(Archive model) { if (!string.IsNullOrEmpty(model.FileName)) { byte[] fileBytes = await FileStorageManagerReference.DownloadAsync(model.FileName, "Archives"); if (fileBytes != null) { model.DownCount = model.DownCount + 1; await RepositoryReference.EditAsync(model); await FileUtil.SaveAs(JSRuntimeInjector, model.FileName, fileBytes); } } }
/// <summary> /// 삭제 버튼 클릭 이벤트 처리기 /// </summary> protected async void DeleteClick() { bool isDelete = await JSRuntimeInjector.InvokeAsync <bool>("confirm", $"{Id}번 글을 정말로 삭제하시겠습니까?"); if (isDelete) { if (!string.IsNullOrEmpty(Model?.FileName)) { // 첨부 파일 삭제 await FileStorageManagerReference.DeleteAsync(Model.FileName, ""); } await RepositoryReference.DeleteAsync(Id); // 삭제 NavigationManagerInjector.NavigateTo("/Replys"); // 리스트 페이지로 이동 } else { await JSRuntimeInjector.InvokeAsync <object>("alert", "취소되었습니다."); } }
/// <summary> /// 삭제 버튼 클릭 이벤트 처리기 /// </summary> protected async void DeleteClick() { bool isDelete = await JSRuntimeInjector.InvokeAsync <bool>("confirm", $"Are you sure you want to delete it?"); if (isDelete) { if (!string.IsNullOrEmpty(Model?.FileName)) { // 첨부 파일 삭제 await FileStorageManagerReference.DeleteAsync(Model.FileName, ""); } await RepositoryReference.DeleteAsync(Id); // 삭제 NavigationManagerInjector.NavigateTo("/Memos"); // 리스트 페이지로 이동 } else { await JSRuntimeInjector.InvokeAsync <object>("alert", "Canceled."); } }