Jaki jest najlepszy sposób wygenerowania strony html z danych w widoku? Mam szablon HTML ze wszystkimi tabelami itp. Nie chcę używać szablonów takich jak JqueryTemplate.Powrót Dokument w formacie PDF z kontrolera Asp.net MVC
Odpowiedz
Po prostu utwórz stronę serwera pdf i zwróć plik zamiast widoku HTML. nie jaką dostawcy pdf używasz ale to rozwiązanie dla iTextSharp:
Cóż, zazębiłeś mnie. Zacznijmy od początku. Jaki jest twój prawdziwy przypadek? co chcesz robić? Istnieje wiele różnych wysyłanych danych z kontrolera na stronę html z lub bez kontrolera –
Spróbuj tego podejścia z wykorzystaniem hiqpdf html to pdf converter, produkt handlowy:
public class HomeController : Controller
{
public ActionResult Index()
{
ViewBag.Message = "Welcome to ASP.NET MVC!";
Session["MySessionVariable"] = "My Session Variable Value assigned in Index";
return View();
}
public ActionResult About()
{
return View();
}
public string RenderViewAsString(string viewName, object model)
{
// create a string writer to receive the HTML code
StringWriter stringWriter = new StringWriter();
// get the view to render
ViewEngineResult viewResult = ViewEngines.Engines.FindView(ControllerContext, viewName, null);
// create a context to render a view based on a model
ViewContext viewContext = new ViewContext(
ControllerContext,
viewResult.View,
new ViewDataDictionary(model),
new TempDataDictionary(),
stringWriter
);
// render the view to a HTML code
viewResult.View.Render(viewContext, stringWriter);
// return the HTML code
return stringWriter.ToString();
}
[HttpPost]
public ActionResult ConvertThisPageToPdf()
{
// get the HTML code of this view
string htmlToConvert = RenderViewAsString("Index", null);
// the base URL to resolve relative images and css
String thisPageUrl = this.ControllerContext.HttpContext.Request.Url.AbsoluteUri;
String baseUrl = thisPageUrl.Substring(0, thisPageUrl.Length - "Home/ConvertThisPageToPdf".Length);
// instantiate the HiQPdf HTML to PDF converter
HtmlToPdf htmlToPdfConverter = new HtmlToPdf();
// hide the button in the created PDF
htmlToPdfConverter.HiddenHtmlElements = new string[] { "#convertThisPageButtonDiv" };
// render the HTML code as PDF in memory
byte[] pdfBuffer = htmlToPdfConverter.ConvertHtmlToMemory(htmlToConvert, baseUrl);
// send the PDF file to browser
FileResult fileResult = new FileContentResult(pdfBuffer, "application/pdf");
fileResult.FileDownloadName = "ThisMvcViewToPdf.pdf";
return fileResult;
}
[HttpPost]
public ActionResult ConvertAboutPageToPdf()
{
// get the About view HTML code
string htmlToConvert = RenderViewAsString("About", null);
// the base URL to resolve relative images and css
String thisPageUrl = this.ControllerContext.HttpContext.Request.Url.AbsoluteUri;
String baseUrl = thisPageUrl.Substring(0, thisPageUrl.Length - "Home/ConvertAboutPageToPdf".Length);
// instantiate the HiQPdf HTML to PDF converter
HtmlToPdf htmlToPdfConverter = new HtmlToPdf();
// render the HTML code as PDF in memory
byte[] pdfBuffer = htmlToPdfConverter.ConvertHtmlToMemory(htmlToConvert, baseUrl);
// send the PDF file to browser
FileResult fileResult = new FileContentResult(pdfBuffer, "application/pdf");
fileResult.FileDownloadName = "AboutMvcViewToPdf.pdf";
return fileResult;
}
}
Źródło ten przykładowy kod: How to convert HTML to PDF using HiQPDF
szukałem pliku PDF przez 3 dni. Ale to rozwiązanie jest lepsze. Dzięki – MustafaP
- 1. ASP.NET MVC powrót ViewResult
- 2. Powrót Różne widoki z kontrolera MVC
- 3. Dostosowywanie dokumentu cenowego w formacie R Dokument pdf
- 4. zmiana nazwy kontrolera asp.net mvc
- 5. ASP.NET MVC - Bieżąca akcja z kodu kontrolera?
- 6. ASP.NET MVC: wystąpienie kontrolera dostępu z widoku
- 7. Eksportowanie plik PDF z ASP.NET MVC
- 8. ASP.NET rdlc z zewnętrznymi obrazami niewyświetlającymi obrazów w formacie PDF
- 9. Powrót z kontrolera do poprzedniego
- 10. jQuery $ (dokument) .ready i ASP.NET MVC Partial
- 11. Powrót plik z ASP.NET Web API 5
- 12. ASP.NET MVC [RequireHttps] - powrót do http
- 13. Przekierowanie nieautoryzowanego kontrolera w ASP.NET MVC
- 14. generowanie dokumentów PDF w ASP.NET
- 15. W ASP.NET MVC, jak zwrócić dokument xml do widoku
- 16. Problem z czytaniem w formacie PDF z czytnikiem PDF
- 17. Obsługa stron w formacie PDF w PhantomJS
- 18. Jak podłączyć wspólny kod z podstawowego kontrolera w ASP.NET MVC
- 19. Jak przekazać datetime z widoku do kontrolera w asp.net MVC
- 20. Globalny obsługi błędów (poza z kontrolera) w ASP.NET MVC
- 21. Routing z i bez nazwy kontrolera w ASP.NET MVC 4
- 22. ASP.NET MVC: Grupowanie klas wokół kontrolera
- 23. ASP.NET MVC - przekazywania parametrów do kontrolera
- 24. Macierz przestrzeni nazw kontrolera ASP.Net MVC
- 25. ASP.Net MVC Odświeżenie wartości etykiety do kontrolera
- 26. ASP.NET MVC: Jak wysłać wiadomość e-mail w formacie HTML za pomocą kontrolera?
- 27. Wyświetl obraz w formacie pdf
- 28. Jak wyświetlić plik PDF za pomocą PdfSharp w ASP.Net MVC?
- 29. jak wyczyścić dokument HTML w formacie Microsoft?
- 30. Jak mogę POST danych z kontrolera MVC asp.net do strony asp.net non-MVC?
Dlaczego nie chcesz korzystać z kompilacji w mVC synrax brzytwa? Czy musisz zrobić to po stronie klienta? –
dlaczego musisz robić to po stronie klienta? Dlaczego nie wygenerować strony serwera pdf i zwrócić gotowy pdf jako bajty? –