【发布时间】:2020-07-06 08:09:37
【问题描述】:
我正在使用Syncfusion.DocIO 执行邮件合并,但我的文档模板位于 SQL Server DB 中strong>无法将字节转换为字符串,尽管WordDocument 也有流的重载方法。我如何解决这个问题,请帮助我如何使用此代码执行邮件合并。
谢谢
public ActionResult CreateDocument(GenerateTemp generateDoc)
{
var FileById = (from doc in db.Documents
where doc.D_Id.Equals(generateDoc.D_Id)
select new {doc.D_File}).ToList().FirstOrDefault();
using (WordDocument document = new WordDocument(FileById.D_File))
{
string[] fieldNames = { "ContactName", "CompanyName", "Address", "City", "Country", "Phone" };
string[] fieldValues = { "Nancy Davolio", "Syncfusion", "507 - 20th Ave. E.Apt. 2A", "Seattle, WA", "USA", "(206) 555-9857-x5467" };
//Performs the mail merge
document.MailMerge.Execute(fieldNames, fieldValues);
//Saves the Word document to disk in DOCX format
document.Save("Result.docx", FormatType.Docx, HttpContext.ApplicationInstance.Response, HttpContentDisposition.Attachment);
}
return View();
}
【问题讨论】:
-
响应可以是任一页面或文件,不能同时是两者。您可以保存到 MemoryStream 并将底层字节数组作为 ContentResult 返回吗?
标签: asp.net asp.net-mvc syncfusion mailmerge