首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何下载VSTO excel?

如何下载VSTO excel?
EN

Stack Overflow用户
提问于 2011-01-23 15:05:58
回答 1查看 715关注 0票数 1

我想完成以下任务。

  1. I有一个web应用程序,通过它我将调用VSTO应用程序,我必须在excel工作簿
  2. 的一个工作表中插入一些值,我将在excel工作表中插入值,并必须使用upload按钮将值上传到DB。

到目前为止我做了什么。

  1. I创建了一个web应用解决方案。"C:\Examples\WebVSTO\WebVSTO\WebVSTO"
  2. I创建了一个VSTO解决方案。"C:\Examples\VSTO2007\VSTO2007\VSTO2007.xlsx"
  3. I将值插入excel表中,如下所示:

System.Data.OleDb.OleDbConnection objConn =新System.Data.OleDb.OleDbConnection( "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=“+objConn+;ExtendedProperties=Excel 8.0;");objConn.Open();System.Data.OleDb.OleDbCommand objCmd =新System.Data.OleDb.OleDbCommand();objCmd.Connection = objConn;objCmd.CommandText =”插入到Sheet1 1$“+值(‘Test’);objCmd.ExecuteNonQuery();objConn.Close();

  • I运行web应用程序,并观察到这些值是插入到excel中的。

  • i通过运行VSTO解决方案从excel上传这些值,并将值上传到DB.

问题

  1. excel (只有VSTO而不是整个解决方案)将放在不同的文件夹中。当我点击web应用程序中的下载按钮时,excel将被下载到客户端位置。

我面对上述问题。我该怎么回应。

请告诉我。

提前谢谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-01-23 15:40:24

如果我正确理解,这个问题是一个相当普遍的问题:“如何使一个文件不在web应用程序文件夹上可供下载?”

这样做的简单方法是将二进制代码写入响应流并设置一些标头。

代码语言:javascript
运行
复制
HttpResponse.Clear();
HttpResponse.BufferOutput = false;
HttpResponse.ContentType = "application/excel";
HttpResponse.AddHeader("content-disposition", "filename=VSTO2007.xlsx");

FileStream sourceFile = new FileStream(@"C:\Examples\VSTO2007\VSTO2007\VSTO2007.xlsx", FileMode.Open);
long FileSize;
FileSize = sourceFile.Length;
byte[] getContent = new byte[(int)FileSize];
sourceFile.Read(getContent, 0, (int)sourceFile.Length);
sourceFile.Close();

Response.BinaryWrite(getContent);

我没有测试它,但它应该能用。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4774482

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档