Asp.NET Excel Rapor Alırken Hücre İçine Enter Atma
Merhaba Arkadaşlar,
Asp.net ile bir excel dosyası oluştururken hücre içinde kayıtlar arasına düzenli görünmesi için <br> atmak isteyebilirsiniz. Bu durumda aşağıdaki gösterdiğim şekilde yapabilirsiniz.
Kaynak projeyi buradan indirebilirsiniz.
private void Export_Exel() { DataTable dt = GetDataMethod(); GridView GridView1 = new GridView(); GridView1.AutoGenerateColumns = true; GridView1.AllowSorting = false; GridView1.AllowPaging = false; GridView1.DataSource = dt; GridView1.DataBind(); Response.Clear(); Response.Buffer = true; Response.AddHeader("content-disposition", "attachment;filename=odeme-listesi.xls"); Response.ContentEncoding = System.Text.Encoding.Unicode; Response.BinaryWrite(System.Text.Encoding.Unicode.GetPreamble()); Response.ContentType = "application/vnd.ms-excel"; StringWriter sw = new StringWriter(); HtmlTextWriter hw = new HtmlTextWriter(sw); for (int i = 0; i < GridView1.Rows.Count; i++) { GridView1.Rows[i].Attributes.Add("class", "textmode"); } hw.AddAttribute("xmlns:x", "urn:schemas-microsoft-com:office:excel"); hw.RenderBeginTag(HtmlTextWriterTag.Html); hw.RenderBeginTag(HtmlTextWriterTag.Head); hw.RenderBeginTag(HtmlTextWriterTag.Style); hw.Write("br {mso-data-placement:same-cell;}"); hw.RenderEndTag(); hw.RenderEndTag(); hw.RenderBeginTag(HtmlTextWriterTag.Body); GridView1.RenderControl(hw); hw.RenderEndTag(); hw.RenderEndTag(); string style = @"<meta http-equiv=’Content-Type’ content=’text/html; charset=windows-1254′ /> <style>.textmode { mso-number-format:\@; } </style> ";// Response.Write(style); Response.Output.Write(HttpUtility.HtmlDecode(sw.ToString())); Response.Flush(); Response.End(); }
public DataTable GetDataMethod()//Burada örnek veri oluşturup Datatable tipinde döndürüyoruz. { DataTable table = new DataTable(); table.Columns.Add("ID", typeof(string)); table.Columns.Add("NAME", typeof(string)); table.Columns.Add("LASTNAME", typeof(string)); table.Columns.Add("PAYMENTDETAIL", typeof(string)); table.Rows.Add("1", "AHMET", "YILMAZ", @"<b>Ödeme No:</b> 1587 - <b>Tutar:</b> 300 TL - <b>Tarih:</b> 10.10.2017 <br/> <b>Ödeme No:</b> 1587 - <b>Tutar:</b> 300 TL - <b>Tarih:</b> 10.10.2017 <br/> <b>Ödeme No:</b> 1587 - <b>Tutar:</b> 300 TL - <b>Tarih:</b> 10.10.2017 <br/> <b>Ödeme No:</b> 1587 - <b>Tutar:</b> 300 TL - <b>Tarih:</b> 10.10.2017 <br/>"); table.Rows.Add("2", "MEHMET", "YILMAZ", @"<b>Ödeme No:</b> 4589 - <b>Tutar:</b> 400 TL - <b>Tarih:</b> 10.10.2017 <br/> <b>Ödeme No:</b> 4589 - <b>Tutar:</b> 400 TL - <b>Tarih:</b> 10.10.2017 <br/> <b>Ödeme No:</b> 4589 - <b>Tutar:</b> 400 TL - <b>Tarih:</b> 10.10.2017 <br/> <b>Ödeme No:</b> 4589 - <b>Tutar:</b> 400 TL - <b>Tarih:</b> 10.10.2017 <br/> <b>Ödeme No:</b> 4589 - <b>Tutar:</b> 400 TL - <b>Tarih:</b> 10.10.2017 <br/> <b>Ödeme No:</b> 4589 - <b>Tutar:</b> 400 TL - <b>Tarih:</b> 10.10.2017 <br/>"); table.Rows.Add("3", "KENAN", "YILMAZ", @"<b>Ödeme No:</b> 2347 - <b>Tutar:</b> 200 TL - <b>Tarih:</b> 10.10.2017 <br/> <b>Ödeme No:</b> 2347 - <b>Tutar:</b> 200 TL - <b>Tarih:</b> 10.10.2017 <br/> <b>Ödeme No:</b> 2347 - <b>Tutar:</b> 200 TL - <b>Tarih:</b> 10.10.2017 <br/> <b>Ödeme No:</b> 2347 - <b>Tutar:</b> 200 TL - <b>Tarih:</b> 10.10.2017 <br/> <b>Ödeme No:</b> 2347 - <b>Tutar:</b> 200 TL - <b>Tarih:</b> 10.10.2017 <br/>"); table.Rows.Add("4", "KEMAL", "YILMAZ", @"<b>Ödeme No:</b> 3964 - <b>Tutar:</b> 100 TL - <b>Tarih:</b> 10.10.2017 <br/> <b>Ödeme No:</b> 3964 - <b>Tutar:</b> 100 TL - <b>Tarih:</b> 10.10.2017 <br/> <b>Ödeme No:</b> 3964 - <b>Tutar:</b> 100 TL - <b>Tarih:</b> 10.10.2017 <br/> <b>Ödeme No:</b> 3964 - <b>Tutar:</b> 100 TL - <b>Tarih:</b> 10.10.2017 <br/> <b>Ödeme No:</b> 3964 - <b>Tutar:</b> 100 TL - <b>Tarih:</b> 10.10.2017 <br/>"); table.Rows.Add("5", "ZEYNEP", "YILMAZ", @"<b>Ödeme No:</b> 1280 - <b>Tutar:</b> 50 TL - <b>Tarih:</b> 10.10.2017 <br/> <b>Ödeme No:</b> 1280 - <b>Tutar:</b> 50 TL - <b>Tarih:</b> 10.10.2017 <br/>"); table.Rows.Add("6", "HASAN", "YILMAZ", @"<b>Ödeme No:</b> 3052 - <b>Tutar:</b> 300 TL - <b>Tarih:</b> 10.10.2017 <br/> <b>Ödeme No:</b> 3052 - <b>Tutar:</b> 300 TL - <b>Tarih:</b> 10.10.2017 <br/> <b>Ödeme No:</b> 3052 - <b>Tutar:</b> 300 TL - <b>Tarih:</b> 10.10.2017 <br/>"); table.Rows.Add("7", "HÜSEYİN", "YILMAZ", @"<b>Ödeme No:</b> 4690 - <b>Tutar:</b> 300 TL - <b>Tarih:</b> 10.10.2017 <br/> <b>Ödeme No:</b> 4690 - <b>Tutar:</b> 300 TL - <b>Tarih:</b> 10.10.2017 <br/> <b>Ödeme No:</b> 4690 - <b>Tutar:</b> 300 TL - <b>Tarih:</b> 10.10.2017 <br/> <b>Ödeme No:</b> 4690 - <b>Tutar:</b> 300 TL - <b>Tarih:</b> 10.10.2017 <br/> <b>Ödeme No:</b> 4690 - <b>Tutar:</b> 300 TL - <b>Tarih:</b> 10.10.2017 <br/> <b>Ödeme No:</b> 4690 - <b>Tutar:</b> 300 TL - <b>Tarih:</b> 10.10.2017 <br/> <b>Ödeme No:</b> 4690 - <b>Tutar:</b> 300 TL - <b>Tarih:</b> 10.10.2017 <br/> <b>Ödeme No:</b> 4690 - <b>Tutar:</b> 300 TL - <b>Tarih:</b> 10.10.2017 <br/> <b>Ödeme No:</b> 4690 - <b>Tutar:</b> 300 TL - <b>Tarih:</b> 10.10.2017 <br/> <b>Ödeme No:</b> 4690 - <b>Tutar:</b> 300 TL - <b>Tarih:</b> 10.10.2017 <br/> <b>Ödeme No:</b> 4690 - <b>Tutar:</b> 300 TL - <b>Tarih:</b> 10.10.2017 <br/> <b>Ödeme No:</b> 4690 - <b>Tutar:</b> 300 TL - <b>Tarih:</b> 10.10.2017 <br/> <b>Ödeme No:</b> 4690 - <b>Tutar:</b> 300 TL - <b>Tarih:</b> 10.10.2017 <br/> <b>Ödeme No:</b> 4690 - <b>Tutar:</b> 300 TL - <b>Tarih:</b> 10.10.2017 <br/>"); table.Rows.Add("8", "AYŞE", "KAYA", @"<b>Ödeme No:</b> 4713 - <b>Tutar:</b> 200 TL - <b>Tarih:</b> 10.10.2017 <br/>"); table.Rows.Add("9", "LALE", "KAYA", @"<b>Ödeme No:</b> 5124 - <b>Tutar:</b> 500 TL - <b>Tarih:</b> 10.10.2017 <br/>"); table.Rows.Add("10", "AHMET", "KAYA", @"<b>Ödeme No:</b> 4011 - <b>Tutar:</b> 400 TL - <b>Tarih:</b> 10.10.2017 <br/>"); table.Rows.Add("11", "MEHMET", "KAYA", @"<b>Ödeme No:</b> 2356 - <b>Tutar:</b> 100 TL - <b>Tarih:</b> 10.10.2017 <br/>"); table.Rows.Add("12", "KENAN", "KAYA", @"<b>Ödeme No:</b> 3567 - <b>Tutar:</b> 200 TL - <b>Tarih:</b> 10.10.2017 <br/>"); table.Rows.Add("13", "KEMAL", "ÇETİN", @"<b>Ödeme No:</b> 8734 - <b>Tutar:</b> 300 TL - <b>Tarih:</b> 10.10.2017 <br/>"); table.Rows.Add("14", "ZEYNEP", "ÇETİN", @"<b>Ödeme No:</b> 3890 - <b>Tutar:</b> 100 TL - <b>Tarih:</b> 10.10.2017 <br/>"); table.Rows.Add("15", "HASAN", "ÇETİN", @"<b>Ödeme No:</b> 3865 - <b>Tutar:</b> 50 TL - <b>Tarih:</b> 10.10.2017 <br/>"); return table; }
Rapor alındığında aşağıdaki gibi çıktı veriyor.
Kaynak olarak aşağıdaki yazıdan faydalandım.
Son yorumlar