Asp.net excel aktarımı yapmaya çalışırken elimdeki list datayı html table olarak String Builder ile append ederek çıkartmak istedim fakat türkçe karakter sorununu çözemedim. Aşağıdaki kod sayesinde Türkçe karakter sorununu aşabilirsiniz.
string dosyaAdi = $"EXCEL_{DateTime.Now.ToString("dd_MM_yyyy")}.xls";
List<isclass> islistesi = new List<isclass>();
using (var context = new EFUnitOfWork(new EFContext()))
{
islistesi = context.GetRepository<clsIs>().GetAll().ToList().Select(b => new isclass
{
Adi = b.IsSahibi,
il = b.Il,
ilce = b.Ilce
}).ToList();
}
islistesi.Add(new isclass
{
Adi = "Bayram Ali ÜNÜVAR",
il = "İSTANBUL",
ilce = "KARTAL"
});
var grid = new GridView();
grid.DataSource = islistesi;
grid.DataBind();
Response.ClearContent();
Response.Charset = "utf-8";
Response.AddHeader("content-disposition", "attachment; filename=" + dosyaAdi + ".xls");
Response.ContentType = "application/ms-excel";
Response.ContentEncoding = System.Text.Encoding.Unicode;
Response.BinaryWrite(System.Text.Encoding.Unicode.GetPreamble());
StringWriter sw = new StringWriter();
HtmlTextWriter htw = new HtmlTextWriter(sw);
grid.RenderControl(htw);
Response.Write(sw.ToString());
Response.End();
class isclass
{
public string Adi { get; set; }
public string il { get; set; }
public string ilce { get; set; }
}
Hiç yorum yok:
Yorum Gönder