Для создания PDF-файла вам понадобится сторонняя библиотека, так как эта функциональность не встроена в .NET Framework. iTextSharp является популярным.
Так, например, вы можете написать результат пользовательского действия:
public class PdfResult : ActionResult
{
public override void ExecuteResult(ControllerContext context)
{
var response = context.HttpContext.Response;
response.ContentType = "application/pdf";
var cd = new ContentDisposition
{
Inline = true,
FileName = "test.pdf",
};
response.AddHeader("Content-Disposition", cd.ToString());
using (var doc = new Document())
using (var writer = PdfWriter.GetInstance(doc, response.OutputStream))
{
doc.Open();
doc.Add(new Phrase("Hello World"));
}
}
}
, а затем заставить действие вашего контроллера вернуть этот результат:
public class HomeController : Controller
{
public ActionResult Index()
{
return new PdfResult();
}
}