如何连接到SharePoint 2013中的Excel工作簿并进行更新

我正在创build一个命令行应用程序,我想连接到一个SharePoint网站,有一个工作簿,我想更新。

我甚至不知道从哪里开始,但我猜我的问题是。

  • 我可以使用什么API? 它必须是已经内置的东西,而不是第三方的API,如果可能的话)
  • 一旦连接完成,我可以打开电子表格,我是否也可以从一张转换到另一张?

我试图使用这样的代码,但没有奏效。

private static void GetExcelSheetNames(string filename) { var xls = new Microsoft.Office.Interop.Excel.Application(); xls.Visible = true; xls.DisplayAlerts = false; var workbook = xls.Workbooks.Open(Filename: filename, IgnoreReadOnlyRecommended: true, ReadOnly: false); try { // Refresh the data from data connections workbook.RefreshAll(); // Wait for the refresh occurs - *wish there was a better way than this. System.Threading.Thread.Sleep(5000); // Save the workbook back again workbook.SaveAs(Filename: filename); // This is when the Exception is thrown // Close the workbook workbook.Close(SaveChanges: false); } catch (Exception ex) { //Exception message is "Cannot save as that name. Document was opened as read-only." } finally { xls.Application.Quit(); xls = null; } } 

我得到的例外是:

Microsoft Excel无法访问文件“https // url / bla / bla / bla / workbook.xlsx”有几种可能的原因:

  • 文件名或path不存在。
  • 该文件正在被另一个程序使用。
  • 您尝试保存的工作簿与当前打开的工作簿具有相同的名称。

实际上,它似乎是试图在我的机器上打开一个Excel桌面的实例。

对不起,这样一个开放的问题,但我不知道如何连接到SharePoint网站。

提前致谢!

如果您正在文档库中使用文档,请在尝试保存文档之前检查确认文档正在检出。 我正在使用一个类似的过程,但使用报告库,而不是文档库,并能够保存文件没有签出/在。