最近有个项目,要求用Silverlight在服务器端修改和读取Excel文件,于是用到了SharePoint中的2个Web Service来实现这个功能,它们分别是http://url/_vti_bin/lists.asmxhttp://url/_vti_bin/ExcelService.asmx

 

基本原理很简单,就是先用http://url/_vti_bin/lists.asmx将要修改的Excel文件迁出,然后再用http://url/_vti_bin/ExcelService.asmx往Excel中写内容。

 

原理清楚了,剩下的步骤就很简单了。添加2个Service的引用,然后调用,迁出文件修改,再保存,迁入。

 

string targetWorkbookPath = "http://url/Documents/ben.xlsx";

 

//迁出要修改的文件

finwebuat.Lists listsServcie = new finwebuat.Lists();

listsServcie.Credentials = System.Net.CredentialCache.DefaultNetworkCredentials;

listsServcie.CheckOutFile(targetWorkbookPath, "false", DateTime.Now.ToString());

 

ExcelService.ExcelService excelService = new ExcelService.ExcelService();

excelService.Credentials = System.Net.CredentialCache.DefaultNetworkCredentials;

 

Status[] outStatus;

string sheetName = "Sheet1";//要修改哪一个工作薄

 

//生成一个SessionID

string sessionId = excelService.OpenWorkbookForEditing(targetWorkbookPath, "en-US", "en-US", out outStatus);

 

////Excel文件赋值。A10表示向A10表格中写内容。

excelService.SetCellA1(sessionId, sheetName, "A10", "你要写入的内容");

 

//保存修改

excelService.SaveWorkbook(sessionId);

 

//Check In 文件

listsServcie.CheckInFile(targetWorkbookPath, "", "1");

 

excelService.CloseWorkbook(sessionId);

相关文章:

  • 2022-12-23
  • 2021-11-11
  • 2021-09-14
  • 2021-11-05
  • 2022-12-23
  • 2022-02-25
  • 2022-12-23
  • 2022-12-23
猜你喜欢
  • 2021-10-01
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-08-05
相关资源
相似解决方案