public ActionResult Crear(FormCollection form, Reporte reporte)
        {
            List<Columna> columnas = new List<Columna>();
            for (int i = 0; i < form.Count-2; i += 4)
            {
                Columna columna = new Columna();
                columna.fecha = form[i];
                columna.detalle = form[i+1];
                columna.num_boleta = form[i+2];
                columna.costo = Int32.Parse(form[i+3]);
                columnas.Add(columna);
            }

            //string file = @"C:\Users\juancarlosgonzalezca\Documents\Documento.pdf";

            string path = AppDomain.CurrentDomain.BaseDirectory;
            string file = path + "/Reportes/" + reporte.reporte_id + ".pdf";

            ViewBag.Columnas = columnas;

            reporte.url = file;

            try
            {
                if (ModelState.IsValid)
                {
                    db.Reportes.Add(reporte);
                    db.SaveChanges();
                }
            }
            catch (Exception ex)
            {
                TempData["Error"] = ex.Message;
                return View("Error");
            }

            string html;
            using (var sw = new StringWriter())
            {
                var viewResult = ViewEngines.Engines.FindPartialView(this.ControllerContext, "PDF");
                var viewContext = new ViewContext(this.ControllerContext, viewResult.View, this.ViewData, this.TempData, sw);
                viewResult.View.Render(viewContext, sw);
                viewResult.ViewEngine.ReleaseView(this.ControllerContext, viewResult.View);
                html= sw.GetStringBuilder().ToString();
            }

            Document document = new Document(PageSize.A4, 80, 50, 30, 65);
            PdfWriter.GetInstance(document, new FileStream(file, FileMode.Create));
            document.Open();

            foreach (IElement E in HTMLWorker.ParseToList(new StringReader(html), new StyleSheet()))
                document.Add(E);

            document.Close();

            return RedirectToAction("Index");
        }
 public ActionResult Crear()
 {
     Reporte reporte = new Reporte();
     reporte.reporte_id = db.Reportes.Count() + 1;
     return View(reporte);
 }