Export داده های گرید ویو به Excel یا Html یا Doc

تگها |۴ اردیبهشت ۱۳۸۷
مراحل کار ـ به ترتیب کنترل های SqlDataSource,GridView رو به فرم اضافه کنید(اگه از دیتابیست Access استفاده می کنید،باید از AccessDataSource استفاده کنید). ـ SqlDataSource رو اونطوری که دوست دارین Configure کنید، یعنی مشخصات جدول و فیلدها رو بهش بدید، بعدش اونو به GridView بایند کنید. ـ تا اینجا که یه خط کدهم ننوشتیم. ـ یه باتون به فرم اضافه کنید تا با کلیک رو اون مقادیر بصورت یه فایل xls ذخیره بشن. protected void Page_Load(object sender, EventArgs e) { VerifyRenderingInServerForm(form1); } protected void btnExport_Click(object sender, EventArgs e) { Response.Clear(); Response.AddHeader("content-disposition", "attachment;filename=FileName.xls"); Response.Charset = ""; Response.ContentType = "application/vnd.xls"; System.IO.StringWriter sw = new System.IO.StringWriter(); HtmlTextWriter htw = new HtmlTextWriter(sw); GridView.RenderControl(htw); Response.Write(sw.ToString()); Response.End(); } public override void VerifyRenderingInServerForm(Control control) { } ـ از اونجایی که در نهایت گرید یه table بهتون میده(بعد از لود فرم)، با دستورات بالا table گرید بهمراه هر style ای داشته باشه(رنگ بندی و...) استخراج میشه و با همون رنگ و فرم تو اکسل ذخیره میشه. ـ نکته: روی گرید کلیک راست کنید و AutoFormat رو انتخاب کنید، چندین بار Format رو عوض کنید و هر بار اطلاعات رو ذخیره کنید.فایل های اکسل رو باز کنید و تغییرات رو ببینید. ـ با عوض کردن ContentType و قرار دادن کلید مناسب می تونید اطلاعات رو تو یه فایل doc. و یا html. ذخیره کنید.