2012-12-18 16 views
9

पर डेटाटेबल कनवर्ट करें क्या मुझे एएसपीनेट वेब एप्लिकेशन में डेटाटेबल को पीडीएफ में परिवर्तित करने के लिए कोड मिल सकता है। मैं datatable को PDF में निर्यात करने की कार्यक्षमता चाहता हूं। मुझे this आलेख मिला है, लेकिन यह gridview का उपयोगपीडीएफ

+0

तो ग्रिडव्यू के साथ समस्या क्या है। आपको पेज में ग्रिडव्यू दिखाने की ज़रूरत नहीं है। यह सिर्फ आपके पीडीएफ डेटा के लिए एचटीएमएल टैब्यूलर प्रारूप बनाने के लिए है .. –

+0

मैं पेज –

+1

पर ग्रिड व्यू नहीं दिखा रहा हूं, मैं यह भी कह रहा हूं कि आपका डेटा ग्रिडव्यू में प्रदर्शित नहीं होगा। यह सिर्फ पीडीएफ जेनरेट करने के लिए जेनरेट एचटीएमएल व्यू से लेता है। या तो आप iTextSharp के साथ जा सकते हैं लेकिन आपको ऐसा करने के लिए कई प्रयास करने की आवश्यकता है। –

उत्तर

25

iTextSharp का उपयोग करने के लिए कर रहा है, आप इसे कर सकते हैं। इसे इंटरनेट से डाउनलोड किया जा सकता है और यह मुफ़्त है। कृपया नीचे दिए गए कोड को खोजने,

public void ExportToPdf(DataTable dt) 
    {  
    Document document = new Document(); 
    PdfWriter writer = PdfWriter.GetInstance(document, new FileStream("c://sample.pdf", FileMode.Create)); 
    document.Open(); 
      iTextSharp.text.Font font5 = iTextSharp.text.FontFactory.GetFont(FontFactory.HELVETICA, 5); 

    PdfPTable table = new PdfPTable(dt.Columns.Count); 
    PdfPRow row = null; 
    float[] widths = new float[] { 4f, 4f, 4f, 4f }; 

    table.SetWidths(widths); 

    table.WidthPercentage = 100; 
    int iCol = 0; 
    string colname = ""; 
    PdfPCell cell = new PdfPCell(new Phrase("Products")); 

    cell.Colspan = dt.Columns.Count; 

    foreach (DataColumn c in dt.Columns) 
    { 

     table.AddCell(new Phrase(c.ColumnName, font5)); 
    } 

    foreach (DataRow r in dt.Rows) 
    { 
     if (dt.Rows.Count > 0) 
     { 
      table.AddCell(new Phrase(r[0].ToString(), font5)); 
      table.AddCell(new Phrase(r[1].ToString(), font5)); 
      table.AddCell(new Phrase(r[2].ToString(), font5)); 
      table.AddCell(new Phrase(r[3].ToString(), font5)); 
     }   
    } document.Add(table); 
     document.Close(); 
} 
+0

अच्छा है। धन्यवाद। – Sagotharan

+0

डेटाटेबल एक त्रुटि फेंक रहा है। क्या टाइप करने योग्य –

5

आप नहीं एक DataTable करने के लिए एक पीडीएफ दस्तावेज़ " कन्वर्ट" कर सकते हैं। लेकिन आप डेटा को सामान्य सामग्री के रूप में सम्मिलित कर सकते हैं।

यह डेटा नियंत्रण के माध्यम से किया जाना चाहिए, जैसे GridView या ListView; एक सामान्य वेबपेज की तरह। यही कारण है कि article आपने ऐसा करने के लिए लिंक किया है। GridView संभवतः इसे DataTable के रूप में सौंदर्य रूप से प्रदर्शित करने का सबसे नज़दीकी और आसान तरीका है। चूंकि इसे पीडीएफ दस्तावेज़ में सामान्य तालिका के रूप में संग्रहीत किया जाएगा।

ध्यान दें कि GridView स्मृति में बनाया गया है - आप अपने HTML पृष्ठ में कोई भी बनाने या बनाने की आवश्यकता नहीं है। इसे बेहतर समझने के लिए कोड के साथ प्रयास करें और प्रयोग करें।

तो मैं article का पालन करने की अनुशंसा करता हूं।

+0

+1 के साथ कोई संघर्ष है अच्छी जानकारी के लिए –