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