首頁  >  文章  >  後端開發  >  C# 使用 doggleReport 產生pdf報表

C# 使用 doggleReport 產生pdf報表

黄舟
黄舟原創
2017-02-28 11:40:261415瀏覽

1. 安装nuget

-install package DoddleReport
-install package DoddleReport.iTextSharp
2. 实例代码

static void Main(string[] args)
        {
            var query = GetAll();
            var report = new Report(query.ToReportSource());


            report.TextFields.Title = "Graduate Student Report";
            report.TextFields.SubTitle = "sample header";
            report.TextFields.Footer = "sample footer";
            report.TextFields.Header = string.Format(@"
    Report Generated: {0}
    Total Students: {1}", DateTime.Now, 100);
            report.RenderHints.BooleanCheckboxes = true;
            report.DataFields["Id"].Hidden = true;


            var stream = new MemoryStream();
            var writer = new PdfReportWriter();
            writer.WriteReport(report, stream);


            const string path = "C:\\test";
            if (!Directory.Exists(path))
            {
                Directory.CreateDirectory(path);
            }
            File.WriteAllBytes(string.Format(path+"/studentReport_{0}.pdf",DateTime.Now.ToString("dd-MM-yyyy_HH-mm-ss")), stream.GetBuffer());


            Console.WriteLine("done");
        }


        public class Student
        {
            public int Id { get; set; }
            public string Name { get; set; }
            public bool IsPass { get; set; }
            public int Score { get; set; }
            public DateTime GraduateAt { get; set; }
        }


        public static List<Student> GetAll()
        {
            var rand = new Random();
            return Enumerable.Range(1, 1000)
                .Select(i => new Student
                {
                    Id = i,
                    Name = "Product " + i,
                    Score = rand.Next(100),
                    GraduateAt = DateTime.Now
                })
                .ToList();
        }

3. 在C:\test文件夹中查看结果  

 以上就是C# 使用 doggleReport 生成pdf报表的内容,更多相关内容请关注PHP中文网(www.php.cn)!


陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn