PDA

View Full Version : مشکل نمایش دیتای فارسی بعد از تبذیل دیتاگرید به اکسل



saffari2005
پنج شنبه 11 خرداد 1385, 09:00 صبح
سلام
مشکل جالبی با اکسپورت دیتا ها به اکسل از دیتاگرید پیدا کرده ام و نمی تونم حلش کنم.برای گرفتن اطلاعات از دیتابیس یک storedprocedure نوشتم و دیتاستم رو پر می کنم .تا اینجا مشکلی نیست .با اولین جدولی که تست کردم جواب گرفتم و اطلاعات به درستی اکسپورت شد و فیلدهای فارسی هم به درستی نمایش داده شد اما از اون به بعد برای هیچ جدول دیگه ای اطلاعات فارسی رو درست نشون نمیده و فقط برای اون جدول و تنها در حالتی که * select بزنم جواب میده!در غیر اینصورت فیلدهای فارسی رو درست نشون نمیده و چرت و پرت نشون میده!
کسی میتونه کمکم کنه؟
کدها هم تقریبا به شکل زیرن :


private void Excel_View( String Query, String Report_Title)
{
DataSet DS;
SqlDataAdapter DA;
SqlCommandBuilder Cmd;
System.IO.StringWriter tw;
System.Web.UI.HtmlTextWriter hw;
System.Web.UI.WebControls.DataGrid dg;

//define and open new database connection
DA = new SqlDataAdapter(Query, ocLConnect );
Cmd = new SqlCommandBuilder( DA );
DS = new DataSet();

DA.Fill(DS);
dg = new DataGrid();
dg.DataSource = DS;
dg.DataBind();

dg.Font.Name = "Tahoma";
dg.HorizontalAlign = System.Web.UI.WebControls.HorizontalAlign.Right;
dg.BorderStyle = System.Web.UI.WebControls.BorderStyle.Solid;
dg.HeaderStyle.BackColor = System.Drawing.Color.Blue;
dg.HeaderStyle.ForeColor = System.Drawing.Color.White;
dg.HeaderStyle.HorizontalAlign = System.Web.UI.WebControls.HorizontalAlign.Center;
dg.HeaderStyle.Wrap = false;
dg.HeaderStyle.Font.Bold = true;
dg.ItemStyle.Font.Name = "Tahoma";


//export to excel

Response.Buffer = true;
Response.ClearContent();
Response.ClearHeaders();
Response.ContentType = "application/vnd.ms-excel";
Response.Charset = "";
EnableViewState = true;
tw = new System.IO.StringWriter();
hw = new HtmlTextWriter(tw);
dg.RenderControl(hw);
Context.Response.Write(tw.ToString());
Context.Response.Flush();
Response.Close();
Response.End();

DA.Dispose();
DA = null;
DS.Dispose();
DS = null;
}

private void PrnButton_Click(object sender, System.Web.UI.ImageClickEventArgs e)
{
Excel_View( "exec TestProc", "TestReport");
}

saffari2005
یک شنبه 21 خرداد 1385, 09:38 صبح
کسی با این مشکل برخورد نکرده؟