Tuesday 19 June 2012

How to allow sorting with gridview header column in asp.net

Here is complete code for allow sorting in asp.net gridview:

 public SortDirection dir
    {
        get
        {
            if (ViewState["dirState"] == null)
            {  ViewState["dirState"] = SortDirection.Ascending;
            }
            return (SortDirection)ViewState["dirState"];
        }
        set
        {        ViewState["dirState"] = value;
        }

    }
        protected void gvShowRecord_Sorting(object sender, GridViewSortEventArgs e)
        {
            string sortingDirection = string.Empty;

            if (dir == SortDirection.Ascending)
            {
                dir = SortDirection.Descending;

                sortingDirection = "Desc";
            }

            else
            {
                dir = SortDirection.Ascending;
                sortingDirection = "Asc";
            }

            DataView sortedView = new DataView(BindGridOfParticipantDetail());

            sortedView.Sort = e.SortExpression + " " + sortingDirection;

            gvShowRecord.DataSource = sortedView;

            gvShowRecord.DataBind();
        }
    }


and design page require some settings  as


1. AllowSorting="True"   onsorting="gvShowRecord_Sorting"

 2. <asp:BoundField HeaderText="First Name" DataField="FirstName" SortExpression="FirstName" />


Thursday 14 June 2012

how to create zip folder and download in asp.net


  
using ionic.zip;
 public string  SaveStreamToFile()
        {
            
             CV.Programs.Entity.ParticipantDocument participantDocument = new CV.Programs.Entity.ParticipantDocument();
            participantDocument.ParticipantId = Convert.ToInt32(Session["ParticipantId"]);
            ParticipantDocumentBLL participantDocumentBLL = new ParticipantDocumentBLL();
            DataTable _dataTable=participantDocumentBLL.GetParticipantDocument(participantDocument);
            string directoryPath = Server.MapPath("~/abc/ParticipantDOC/") +"admin"+ Session["ParticipantId"].ToString() + "" + DateTime.Now.ToString("ss");
            if (!Directory.Exists(directoryPath))
            {
                Directory.CreateDirectory(directoryPath);
                ViewState["DirName"] = directoryPath;
            }
            for (int i = 0; i < _dataTable.Rows.Count; i++)
            {
                if (Convert.ToString(_dataTable.Rows[i]["UploadedDocumentName"]) != "")
                {
                    byte[] file = null;
                    file = _dataTable.Rows[i]["UploadedDocument"] as byte[];
                    string filename = _dataTable.Rows[i]["UploadedDocumentName"].ToString();
                    string strExtenstion = Path.GetExtension(filename);
                    // Create a FileStream object to write a stream to a file
                    using (FileStream fileStream = System.IO.File.Create(directoryPath+"/" + Session["ParticipantId"] + "_"+i+"Document" + strExtenstion))
                    {
                        fileStream.Write(file, 0, file.Length);
                    }
                }
            }
            return directoryPath;
        }




        protected void DownloadAllDocuments(string dirPath)
        {


            using (MemoryStream ms = new MemoryStream())
            {
                // create new ZIP archive within prepared MemoryStream
                //Directory.CreateDirectory(Server.MapPath("/KIZUNA/ParticipantPDF/" + Session["UserLoginId"].ToString() + "_" + Session["ParticipantId"] + ".zip"));
                //ZipFile zip =ZipFile.Create(Server.MapPath("/ abc /ParticipantPDF/"+Session["UserLoginId"].ToString()+"_"+Session["ParticipantId"]+".zip"));                
                    // add some files to ZIP archive
               
                    Response.Clear();
                    Response.AddHeader("content-disposition", "filename=sample.zip");
                    Response.ContentType = MimeType(".zip");
                    //string[] allFiles = Directory.GetFiles(dirPath, "*.*", SearchOption.AllDirectories);
                    using (ZipFile zip = new ZipFile())
                    {
                        zip.AddDirectory(dirPath);
                        zip.Save(Response.OutputStream);
                    }


                    //zip.BeginUpdate();
                    //for (int i = 0; i < allFiles.Length; i++)
                    //{
                    //    zip.Add(allFiles[i].ToString());
                       
                    //}
                    //ms.WriteTo(Response.OutputStream);
                    //// clear response stream and set the response header and content type
                   
                    


                    //// write content of the MemoryStream (created ZIP archive) to the response stream
                   
                    //zip.CommitUpdate();
                    //zip.Close();
                
            }
            if (Directory.Exists(dirPath))
            {
                Directory.Delete(dirPath, true);
                //Directory.CreateDirectory(directoryPath);
                //ViewState["DirName"] = directoryPath;
            }
            if (Directory.Exists(Server.MapPath("/ abc /ParticipantPDF/" + Session["UserLoginId"].ToString() + "_" + Session["ParticipantId"] + ".zip")))
            {
                Directory.Delete(Server.MapPath("/ abc /ParticipantPDF/" + Session["UserLoginId"].ToString() + "_" + Session["ParticipantId"] + ".zip"), true);
                //Directory.CreateDirectory(directoryPath);
                //ViewState["DirName"] = directoryPath;
            }
            // close the current HTTP response and stop executing this page
            HttpContext.Current.ApplicationInstance.CompleteRequest();
            
           


        }

Wednesday 13 June 2012

copy file from one folder to other in asp.net


 StringBuilder sb = new StringBuilder(); //  Builder to save report
           string ZipFileName = String.Format(Server.MapPath("pathfto" + DateTime.Now.ToString("yyyyMMdd") + "MyZip.zip")); //  Zip Destiny File Name
           string theDirectory = Server.MapPath("pathfrom/");     //  Folder to zip

        try
        {
            sb.Append(String.Format("Directory To Zip: {0}.<br/>", theDirectory));
            sb.Append(String.Format("Zip file: {0}.<br/>", ZipFileName));
           
            string[] allFiles = Directory.GetFiles(Server.MapPath("path"), "*.*",SearchOption.AllDirectories);   // Get all files from
            // the folder to zip

           
            foreach (string s in allFiles)
            {
                // Use static Path methods to extract only the file name from the path.
              string   fileName = System.IO.Path.GetFileName(s);
              string destFile = System.IO.Path.Combine(theDirectory, fileName);
                System.IO.File.Copy(s, destFile, true);
            }
            if (System.IO.File.Exists(ZipFileName)) //  Small piece of code
            // to delete zip file if it already exists
            {              
                System.IO.File.Delete(ZipFileName);
                sb.Append(String.Format("Deleted old Zip file: {0}.<br/>", ZipFileName));
            }

        }
        catch (Exception) { }
        }

How to create directory on server in asp.net runtime

Here is the complete code for creating new directory on server in asp.net

protected void btnCreate_Click(object sender, EventArgs e) { string directoryPath = Server.MapPath("~/") +txtDirName.Text; if (!Directory.Exists(directoryPath)) { Directory.CreateDirectory(directoryPath); lblMessage.Text = "Directory created"; } else lblMessage.Text = "Directory already exists"; }
Contact Us:

Email:

Vinodkumar434@gmail.com,
vinodtechnosoft@gmail.com

Skype Name:

vinodtechnosoft