コード例 #1
0
ファイル: PDFExporter.cs プロジェクト: freemsly/DataBases
        public static void AllSales()
        {
            var db = new SQLServerContextFactory().Create();
            var strBuilder = new StringBuilder();
            var sales = db.Sales.OrderBy(s => s.Shop.Name);

            strBuilder.Append("<table border='1'>");
            strBuilder.Append("<tr>");
            strBuilder.Append("<th style=\"font-size:16px; text-align:center;\" colspan='5'>Aggregated Sales</th>");
            strBuilder.Append("</tr>");
            strBuilder.Append("<tr>");
            strBuilder.Append("<td>Location</td>");
            strBuilder.Append("<td>Product</td>");
            strBuilder.Append("<td>Quantity</td>");
            strBuilder.Append("<td>Price</td>");
            strBuilder.Append("<td>Sum</td>");
            strBuilder.Append("</tr>");

            foreach (var sale in sales)
            {
                strBuilder.Append("<tr>");
                strBuilder.AppendFormat("<td>{0}</td>", sale.Shop.Name);
                strBuilder.AppendFormat("<td>{0}</td>", sale.Product.Name);
                strBuilder.AppendFormat("<td>{0}</td>", sale.Quantity);
                strBuilder.AppendFormat("<td>{0}</td>", sale.Product.Price);
                strBuilder.AppendFormat("<td>{0}</td>", sale.Quantity * sale.Product.Price);
                strBuilder.Append("</tr>");

            }

            strBuilder.Append("</table>");
            var resultingTable = strBuilder.ToString();

            PDFBuilder.HtmlToPdfBuilder builder = new PDFBuilder.HtmlToPdfBuilder(PageSize.LETTER);
            PDFBuilder.HtmlPdfPage page = builder.AddPage();
            page.AppendHtml(resultingTable);

            byte[] file = builder.RenderPdf();

            string methodName = MethodBase.GetCurrentMethod().Name;
            File.WriteAllBytes(Helpers.NamingFactory.BuildName(methodName, fileType), file);
        }
コード例 #2
0
ファイル: PDFExporter.cs プロジェクト: freemsly/DataBases
        public static void RemainingQuantities()
        {
            var db = new SQLServerContextFactory().Create();
            var strBuilder = new StringBuilder();
            var products = db.Products.OrderBy(p => p.QuantityInStock);

            strBuilder.Append("<table border='1'>");
            strBuilder.Append("<tr>");
            strBuilder.Append("<th style=\"font-size:16px; text-align:center;\" colspan='4'>Available products</th>");
            strBuilder.Append("</tr>");
            strBuilder.Append("<tr>");
            strBuilder.Append("<td>Product Name</td>");
            strBuilder.Append("<td>Description</td>");
            strBuilder.Append("<td>Quantity in stock</td>");
            strBuilder.Append("<td>Price</td>");
            strBuilder.Append("</tr>");

            foreach (var product in products)
            {
                strBuilder.Append("<tr>");
                strBuilder.AppendFormat("<td>{0}</td>", product.Name);
                strBuilder.AppendFormat("<td>{0}</td>", product.Description);
                strBuilder.AppendFormat("<td>{0}</td>", product.QuantityInStock);
                strBuilder.AppendFormat("<td>{0}</td>", product.Price);
                strBuilder.Append("</tr>");
            }

            strBuilder.Append("</table>");

            PDFBuilder.HtmlToPdfBuilder builder = new PDFBuilder.HtmlToPdfBuilder(PageSize.LETTER);
            PDFBuilder.HtmlPdfPage page = builder.AddPage();
            page.AppendHtml(strBuilder.ToString());

            byte[] file = builder.RenderPdf();

            string methodName = MethodBase.GetCurrentMethod().Name;
            File.WriteAllBytes(Helpers.NamingFactory.BuildName(methodName, fileType), file);
        }