예제 #1
0
        private void AddAttechFile(DTO.AttachFile attachFile)
        {
            if (((List <DTO.AttachFile>)Session["AttachFiles"]).Where(a => a.AttechType == attachFile.AttechType).Count() > 0)
            {
                throw new ApplicationException(Resources.errorTestUploadData_002);
            }
            else
            {
                using (svc = new FileService.FileTransferServiceClient()) {
                    UploadFileResponse response  = new UploadFileResponse();
                    Stream             fileStrem = fUpload.PostedFile.InputStream;
                    response = svc.UploadFile(new UploadFileRequest()
                    {
                        TargetContainer = attachFile.TargetContainer,
                        TargetFileName  = attachFile.TargetFileName,
                        FileStream      = fileStrem
                    });

                    attachFile.TargetFullName = CryptoBase64.Encryption(response.TargetFullName);
                    ((List <DTO.AttachFile>)Session["AttachFiles"]).Add(attachFile);
                    gv.DataSource = ((List <DTO.AttachFile>)Session["AttachFiles"]);
                    gv.DataBind();
                }
            }
        }
예제 #2
0
        protected void btnDownload_Click(object sender, EventArgs e)
        {
            using (svc = new FileService.FileTransferServiceClient()) {
                DownloadFileResponse response   = new DownloadFileResponse();
                DTO.AttachFile       attachFile = ((List <DTO.AttachFile>)Session["AttachFiles"]).FirstOrDefault();
                String container = "";
                String fileName  = "";
                response = svc.DownloadFile(new DownloadFileRequest()
                {
                    TargetContainer = container, TargetFileName = attachFile.TargetFullName
                });

                Page.Response.Clear();
                Page.Response.BufferOutput = true;
                Page.Response.ContentType  = response.ContentType;


                // Append header
                //Page.Response.AppendHeader("Content-Disposition", "attachment; filename=" + response.FileName);

                // Write the file to the Response
                const int bufferLength = 10000;
                byte[]    buffer       = new Byte[bufferLength];
                int       length       = 0;
                Stream    download     = null;

                try
                {
                    download = response.FileByteStream; // GetFile(fileName);

                    do
                    {
                        if (Page.Response.IsClientConnected)
                        {
                            length = download.Read(buffer, 0, bufferLength);
                            Page.Response.OutputStream.Write(buffer, 0, length);


                            buffer = new Byte[bufferLength];
                        }
                        else
                        {
                            length = -1;
                        }
                    }while (length > 0);

                    Page.Response.Flush();
                    Page.Response.End();
                }
                finally
                {
                    if (download != null)
                    {
                        download.Close();
                    }
                }
            }
        }
예제 #3
0
        protected void gv_RowDeleting(object sender, GridViewDeleteEventArgs e)
        {
            using (svc = new FileService.FileTransferServiceClient())
            {
                String targetfile = gv.Rows[e.RowIndex].Cells[7].Text;

                DeleteFileResponse response = svc.DeleteFile(new DeleteFileRequest()
                {
                    TargetFileName = targetfile
                });

                DTO.AttachFile file = ((List <DTO.AttachFile>)Session["AttachFiles"]).Where(a => a.AttechType == gv.Rows[e.RowIndex].Cells[1].Text.Trim()).FirstOrDefault();
                ((List <DTO.AttachFile>)Session["AttachFiles"]).Remove(file);
                gv.DataSource = ((List <DTO.AttachFile>)Session["AttachFiles"]);
                gv.DataBind();
                Label1.Text = response.Message;
            }
        }
예제 #4
0
        protected void btnUpload_Click(object sender, EventArgs e)
        {
            if (txtIdCard.Text.Trim().Length != 13)
            {
                Label1.Text = Resources.errorTestUploadData_001;
            }
            else
            {
                try
                {
                    if (Session["AttachFiles"] == null)
                    {
                        Session["AttachFiles"] = new List <DTO.AttachFile>();
                    }

                    DTO.AttachFile attachFile = new DTO.AttachFile();
                    if (((List <DTO.AttachFile>)Session["AttachFiles"]).Count > 0)
                    {
                        txtIdCard.Enabled          = false;
                        attachFile.TargetContainer = ((List <DTO.AttachFile>)Session["AttachFiles"]).FirstOrDefault().TargetContainer;
                    }
                    else
                    {
                        attachFile.TargetContainer = AttachTemp + @"\" + IAS.BLL.Helpers.GenerateIdHelper.GetGenAutoId();
                        txtIdCard.Enabled          = true;
                    }

                    attachFile.FileName = Path.GetFileName(fUpload.FileName);
                    attachFile.FileType = Path.GetExtension(fUpload.FileName);
                    attachFile.ID       = txtIdCard.Text.Trim();
                    //attachFile.TargetFileName = txtIdCard.Text.Trim() +"_"+ (Convert.ToInt32(ddlAttechType.SelectedValue)).ToString("000");
                    attachFile.AttechType = ddlAttechType.SelectedValue.ToString();


                    AddAttechFile(attachFile);
                }
                catch (Exception ex)
                {
                    Label1.Text = ex.Message;
                }
            }
        }
예제 #5
0
        protected void gv_SelectedIndexChanged(object sender, EventArgs e)
        {
            DTO.AttachFile attachFile = ((List <DTO.AttachFile>)Session["AttachFiles"]).FirstOrDefault();
            String         container  = "";
            String         fileName   = gv.Rows[gv.SelectedIndex].Cells[7].Text;


            using (svc = new FileService.FileTransferServiceClient())
            {
                DownloadFileResponse response = new DownloadFileResponse();

                response = svc.DownloadFile(new DownloadFileRequest()
                {
                    TargetContainer = container, TargetFileName = IAS.Utils.CryptoBase64.Decryption(fileName)
                });
                if (response.Code == "0000")
                {
                    ShowImage(response.FileByteStream, Convert.ToInt64(response.Length));
                }
            }
            //    Page.Response.Clear();
            //    Page.Response.BufferOutput = true;
            //    Page.Response.ContentType = response.ContentType;



            //    // Append header
            //    Page.Response.AppendHeader("Content-Disposition", "attachment; filename=" + response.FileName);

            //    // Write the file to the Response
            //    //const int bufferLength = Convert.ToInt32(response.Length);
            //    byte[] buffer = new Byte[Convert.ToInt32(response.Length)];
            //    //int length = 0;
            //    //Stream download = null;
            //    //response.FileByteStream.Write(buffer, 0, Convert.ToInt32(response.Length));
            //    //myImage.ImageUrl = Convert.ToBase64String(buffer).ToString();

            //    using (var memoryStream = new MemoryStream())
            //    {
            //        response.FileByteStream.CopyTo(memoryStream);
            //        buffer = memoryStream.ToArray();
            //    }

            //    myImage.ImageUrl = Convert.ToBase64String(buffer).ToString();

            //    //try
            //    //{
            //    //    download = response.FileByteStream; // etFile(fileName);

            //    //    do
            //    //    {
            //    //        if (Page.Response.IsClientConnected)
            //    //        {
            //    //            length = download.Read(buffer, 0, bufferLength);
            //    //            Page.Response.OutputStream.Write(buffer, 0, length);
            //    //            myImage.ImageUrl = Convert.ToBase64String(buffer).ToString();
            //    //            buffer = new Byte[bufferLength];
            //    //        }
            //    //        else
            //    //        {
            //    //            length = -1;
            //    //        }
            //    //    }
            //    //    while (length > 0);

            //    //    Page.Response.Flush();
            //    //    Page.Response.End();
            //    //}
            //    //finally
            //    //{
            //    //    if (download != null)
            //    //        download.Close();
            //    //}
            //}
        }