C# 打开Excel xlsx文件进行查看
我需要打开一个xlsx文件,以便用户可以看到它。 我使用了以下代码,但无法显示excel文件:C# 打开Excel xlsx文件进行查看,c#,asp.net-mvc,excel,C#,Asp.net Mvc,Excel,我需要打开一个xlsx文件,以便用户可以看到它。 我使用了以下代码,但无法显示excel文件: public ActionResult GetExcelReport() { string fileName = "Sheet1.xlsx"; string path = Path.Combine(@"C:\Test", fileName); return File(path, "application/xlsx"); } 我希望重新运行文件路径。。。 实际上会打开文件进行
public ActionResult GetExcelReport()
{
string fileName = "Sheet1.xlsx";
string path = Path.Combine(@"C:\Test", fileName);
return File(path, "application/xlsx");
}
我希望重新运行文件路径。。。
实际上会打开文件进行查看 尝试使用Microsoft.Office.Interop.Excel,并:
顺便说一下,您也可以使用System.Diagnostics;,及
您只需使用文件打开文件流,它不会启动文件 尝试使用Microsoft.Office.Interop.Excel,并:
顺便说一下,您也可以使用System.Diagnostics;,及
您只需使用文件打开文件流,它不会启动文件 扩展Bhuang 3的答案:如果您希望您的用户能够看到Excel电子表格,然后让您的应用程序对其进行处理,那么我将使用Interop答案,因为您的应用程序可以保留引用以执行操作 你可以用铅笔打开它
Excel.Application xlApp = new Excel.Application();
Excel.Workbooks xlWBs = xlApp.Workbooks;
Excel.Workbook xlWB = xlWBs.Open(path);
xlApp.Visible = true;
完成后,应关闭工作簿并退出应用程序,以防止Excel在内存中无头运行,当用户在其计算机上打开另一个电子表格时,会产生一些非常奇怪的副作用
xlWB.Close();
xlWB = null;
xlWBs = null;
xlApp.Quit();
xlApp = null;
或者,如果您只想打开电子表格,然后完全控制用户,我会使用Process.Startpath解决方案,因为它避免了许多潜在的混乱COM问题。要扩展bhuang3的答案:如果您希望用户能够看到Excel电子表格,然后让应用程序对其进行处理,那么我将使用互操作回答,因为您的应用程序可以保留引用以执行操作 你可以用铅笔打开它
Excel.Application xlApp = new Excel.Application();
Excel.Workbooks xlWBs = xlApp.Workbooks;
Excel.Workbook xlWB = xlWBs.Open(path);
xlApp.Visible = true;
完成后,应关闭工作簿并退出应用程序,以防止Excel在内存中无头运行,当用户在其计算机上打开另一个电子表格时,会产生一些非常奇怪的副作用
xlWB.Close();
xlWB = null;
xlWBs = null;
xlApp.Quit();
xlApp = null;
或者,如果您只想打开电子表格,然后将完全控制权交给用户,我会使用Process.Startpath解决方案,因为它避免了许多潜在的混乱COM问题。发生了什么?另外,你的MIME类型是错误的。什么也没发生。没有错误。我也尝试了application/xls,但都是一样的。没有错误。什么都没发生发生发生什么事了?另外,你的MIME类型是错误的。什么也没发生。没有错误。我也尝试了application/xls,但都是一样的。没有错误。没有发生任何事情。您可以使用process.waitforinputile;同时,还可以使用process.WaitForExit;那么,您可以使用process.WaitForInputIdle;同时,还可以使用process.WaitForExit;