>백엔드 개발 >C#.Net 튜토리얼 >C#은 dongleReport를 사용하여 PDF 보고서를 생성합니다.

C#은 dongleReport를 사용하여 PDF 보고서를 생성합니다.

黄舟
黄舟원래의
2017-02-28 11:40:261486검색

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으로 문의하세요.