我有这段代码使用Spire将文档合并到.PDF
,但我在此行中获得了以下代码result.Save(outputFile,Spire.Pdf.FileFormat.PDF);
CS0012 C#类型'HttpContext'在程序集中定义 没有引用。您必须添加对程序集'System.Web的引用, Version = 4.0.0.0,Culture = neutral,PublicKeyToken = b03f5f7f11d50a3a'。
我尝试将此Assembly
代码添加到App.config文件但没有运气。
<assemblies>
<add assembly="MyAssembly" Version="4.0.0.0" Culture="neutral" PublicKeyToken="b03f5f7f11d50a3a"/>
以下是代码
private void button1_Click(object sender, EventArgs e)
{
OpenFileDialog ofd = new OpenFileDialog();
ofd.Filter = "All files (*.docx, *.pdf, *.pptx, *.pdf)| *.docx; *.pdf; *.pptx; *.xlsx";
ofd.Multiselect = true;
if (DialogResult.OK == ofd.ShowDialog())
{
string[] files = ofd.FileNames;
listBox1.Items.AddRange(files);
}
}
private void button2_Click(object sender, EventArgs e)
{
string ext = string.Empty;
List<Stream> filesStreams = new List<Stream>();
MemoryStream ms1 = new MemoryStream();
MemoryStream ms2 = new MemoryStream();
MemoryStream ms3 = new MemoryStream();
foreach (object item in listBox1.Items)
{
ext = Path.GetExtension(item.ToString());
switch (ext)
{
case ".docx":
Document doc = new Document(item.ToString());
doc.SaveToStream(ms1, Spire.Doc.FileFormat.PDF);
filesStreams.Add(ms1);
break;
case ".pdf":
filesStreams.Add(File.OpenRead(item.ToString()));
break;
case ".pptx":
Presentation ppt = new Presentation(item.ToString(), Spire.Presentation.FileFormat.Auto);
ppt.SaveToFile(ms2, Spire.Presentation.FileFormat.PDF);
filesStreams.Add(ms2);
break;
case ".xlsx":
Workbook xls = new Workbook();
xls.LoadFromFile(item.ToString());
xls.SaveToStream(ms3, Spire.Xls.FileFormat.PDF);
filesStreams.Add(ms3);
break;
default:
break;
}
}
string outputFile = "result.doc";
PdfDocumentBase result = PdfDocument.MergeFiles(filesStreams.ToArray());
//result.SaveToDoc(outputFile);
result.Save(outputFile,Spire.Pdf.FileFormat.PDF);
ms1.Close();
ms2.Close();
ms3.Close();
}
谢谢
答案 0 :(得分:0)
通过右键单击“解决方案资源管理器”窗口中的项目,然后单击上下文菜单中的“添加引用”选项,添加System.Web库的引用。
上述操作将打开“添加引用”对话框,从.Net选项卡中,您需要选择System.Web库并单击“确定”。