gpt4 book ai didi

asp.net - .NET MVC FileResult 在 Web 窗体中等效

转载 作者:行者123 更新时间:2023-12-04 11:30:53 27 4
gpt4 key购买 nike

我使用 FileResult 作为 MVC 中返回 PDF 文件的函数的返回值。

我应该在 Web 窗体中使用什么返回类型?

谢谢

public FileResult PrintPDFVoucher(object sender, EventArgs e)
{
PdfDocument outputDoc = new PdfDocument();
PdfDocument pdfDoc = PdfReader.Open(
Server.MapPath(ConfigurationManager.AppSettings["Template"]),
PdfDocumentOpenMode.Import
);

MemoryStream memory = new MemoryStream();

try
{
//Add pages to the import document
int pageCount = pdfDoc.PageCount;
for (int i = 0; i < pageCount; i++)
{
PdfPage page = pdfDoc.Pages[i];
outputDoc.AddPage(page);
}
//Target specifix page
PdfPage pdfPage = outputDoc.Pages[0];

XGraphics gfxs = XGraphics.FromPdfPage(pdfPage);
XFont bodyFont = new XFont("Arial", 10, XFontStyle.Regular);


//Save
outputDoc.Save(memory, true);
gfxs.Dispose();
pdfPage.Close();
}
finally
{
outputDoc.Close();
outputDoc.Dispose();
}

var result = new FileContentResult(memory.GetBuffer(), "text/pdf");
result.FileDownloadName = "file.pdf";
return result;
}

最佳答案

在 ASP.NET Webforms 中,您需要手动将文件写入响应流。 webforms 中没有结果抽象。

  Response.ContentType = "Application/pdf";      
//Write the generated file directly to the response stream
Response.BinaryWrite(memory);//Response.WriteFile(FilePath); if you have a physical file you want them to download
Response.End();

这段代码没有经过测试,但这应该能让你了解大致的方向。

关于asp.net - .NET MVC FileResult 在 Web 窗体中等效,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4088962/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com