के साथ एक्सेल करने के लिए डेटाटेबल निर्यात करें मैं ईपीप्लस के साथ एक्सेल फ़ाइल में डेटा टेबल निर्यात करना चाहता हूं कि डेटा टेबल में इंट टाइप के साथ संपत्ति है, इसलिए मैं एक्सेल फ़ाइल में जाना चाहता हूं, वही प्रारूप होगा। क्या कोई इनके साथ एक्सेल में डेटाटेबल निर्यात करने का तरीका जानता है?ईपीप्लस
ईपीप्लस
उत्तर
using (ExcelPackage pck = new ExcelPackage(newFile))
{
ExcelWorksheet ws = pck.Workbook.Worksheets.Add("Accounts");
ws.Cells["A1"].LoadFromDataTable(dataTable, true);
pck.Save();
}
यह आपके लिए चाल चलाना चाहिए। यदि आपके फ़ील्ड को इंटेल ईपीप्लस के रूप में परिभाषित किया गया है तो कॉलम को सही संख्या में या फ्लोट में डाला जाएगा।
और आप ब्राउज़र प्रतिक्रिया
Response.Clear();
Response.ContentType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet";
Response.AddHeader("content-disposition", "attachment;filename=" + HttpUtility.UrlEncode("Logs.xlsx", System.Text.Encoding.UTF8));
using (ExcelPackage pck = new ExcelPackage())
{
ExcelWorksheet ws = pck.Workbook.Worksheets.Add("Logs");
ws.Cells["A1"].LoadFromDataTable(dt, true);
var ms = new System.IO.MemoryStream();
pck.SaveAs(ms);
ms.WriteTo(Response.OutputStream);
}
स्निपेट के लिए धन्यवाद शामिल किया जाएगा! Urlencode "Logs.xlsx" की आवश्यकता नहीं है :) –
में डाउनलोड करने के लिए ब्राउज़र उपयोग HttpContext.Current.Response
Response
के बजाय में excelsheet को डाउनलोड करने के लिए चाहते हैं, तो अन्यथा आप मिल जाएगा Response is not available in this context.
error.Here मेरी कोड है
public void ExporttoExcel(DataTable table, string filename)
{
HttpContext.Current.Response.Clear();
HttpContext.Current.Response.ClearContent();
HttpContext.Current.Response.ClearHeaders();
HttpContext.Current.Response.Buffer = true;
HttpContext.Current.Response.ContentEncoding = System.Text.Encoding.UTF8;
HttpContext.Current.Response.Cache.SetCacheability(HttpCacheability.NoCache);
HttpContext.Current.Response.ContentType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet";
HttpContext.Current.Response.AddHeader("content-disposition", "attachment;filename=GridData.xlsx");
using (ExcelPackage pack = new ExcelPackage())
{
ExcelWorksheet ws = pack.Workbook.Worksheets.Add(filename);
ws.Cells["A1"].LoadFromDataTable(table, true);
var ms = new System.IO.MemoryStream();
pack.SaveAs(ms);
ms.WriteTo(HttpContext.Current.Response.OutputStream);
}
HttpContext.Current.Response.Flush();
HttpContext.Current.Response.End();
}
'System.Web.HttpContextBase' प्राप्त करने वाले किसी भी व्यक्ति के लिए 'वर्तमान' की परिभाषा नहीं है: HttpContext.Current का संदर्भ प्राप्त करने के लिए आपको HttpContext.Current के साथ प्रतिस्थापित करने की आवश्यकता है सिस्टम.Web.HttpContext.Current http://stackoverflow.com/questions/19431820/system-web-httpcontextbase-does-not-contain-a-definition-for-current-mvc-4-wi –
कैसे निर्यात करते समय डेटाटेबल के हेडर प्रारूपित करने के लिए ?? –
हां। यह ठीक काम कर रहा है। लेकिन जब डेटाटेबल में लाखों में पंक्तियां होती हैं। यह काम नहीं कर रहा है। – thevan
शायद आपको उस विशिष्ट मामले के लिए एक प्रश्न खोलना चाहिए? – wegginho