public ActionResult Create(Report report) { if (ModelState.IsValid) { db.Frames.Add(report); db.SaveChanges(); return this.RestoreReferrer() ?? RedirectToAction("Index", "Frame"); } this.FillTemplatesSelectList(db, FrameTypes.Report, report.TemplateId); FillServersSelectList(); FillModesSelectList(); return View(report); }
// // GET: /Report/Create public ActionResult Create() { Frame frame = TempData[FrameController.SelectorFrameKey] as Frame; if (frame == null || frame.PanelId == 0) { return RedirectToAction("Create", "Frame"); } Report report = new Report(frame, db); this.FillTemplatesSelectList(db, FrameTypes.Report); FillServersSelectList(); FillModesSelectList(); return View(report); }
public ActionResult Edit(Report report, Frame frame) { if (ModelState.IsValid) { db.Entry(frame).State = EntityState.Modified; db.Entry(report).State = EntityState.Modified; db.SaveChanges(); return this.RestoreReferrer() ?? RedirectToAction("Index", "Frame"); } this.FillTemplatesSelectList(db, FrameTypes.Report, report.Frame.TemplateId); FillServersSelectList(report.ServerId); FillModesSelectList(report.Mode); report.Frame = frame; return View(report); }
/*private byte[] GetReportBytes(int id) { Report report = db.Frames.OfType<Report>() .Include(r => r.ReportServer) .FirstOrDefault(r => r.FrameId == id) ; WebClient client = new WebClient(); string user = (report.ReportServer.User ?? "").Trim(), domain = (report.ReportServer.Domain ?? "").Trim() ; if (!string.IsNullOrWhiteSpace(user)) { client.Credentials = new NetworkCredential( user, RsaUtil.Decrypt(report.ReportServer.Password), domain ); } return client.DownloadData(report.FullPath); }*/ private async Task<byte[]> GetReportBytesAsync(Report report) { var client = new WebClient(); string user = (report.ReportServer.User ?? "").Trim(), domain = (report.ReportServer.Domain ?? "").Trim() ; if (!string.IsNullOrWhiteSpace(user)) { client.Credentials = new NetworkCredential( user, RsaUtil.Decrypt(report.ReportServer.Password), domain ); } return await client.DownloadDataTaskAsync(report.FullPath); }