使用c#读取Excel文件中的行
我已经添加了一个Excel文件来提供unit testing值。
下面是我之前做的一个例子
public void test1() { try { var Service = new Service.ServiceClient(); var Cid = testContextInstance.DataRow["CId"].ToString(); var MNumber = testContextInstance.DataRow["MNumber"].ToString(); var VID = testContextInstance.DataRow["VID"].ToString(); var isVisit = new Service.ISVisit() { }; var first = Service.Medis(isVisit).Cast<Service.ISMedi>().FirstOrDefault(); // Assert Assert.AreEqual("12345678", first.Proc.ProcID); }
。我正在使用Excel表格为untitest提供值。
通过使用上面的示例代码,我能够循环通过Excel中的每一行,并将值设置为variables。但要求是不要将excel作为数据驱动源附加,而不是使用Oledb方式在Excel中查询事物。说我用的是Microsoft.Office.Interop.Excel; 。
任何人都可以帮助我如何更改代码来检索excel中的数据,逐行并使用不同的方法将单元格分配给各个variables。 这是ac#unit testing框架
请参阅http://msdn.microsoft.com/en-us/library/office/microsoft.office.interop.excel(v=office.11​).aspx 。
这可能是C#的重复:如何访问Excel单元格? ,在使用Interop的答案中有例子。
警告
因为您在同一个问题中提到了webservices和Office interop:
Microsoft目前不推荐并不支持从任何无人参与的非交互式客户端应用程序或组件(包括ASP,ASP.NET,DCOM和NT服务)自动化Microsoft Office应用程序,因为Office可能会出现不稳定的行为和/或在此环境中运行Office时发生死锁。
请参阅http://support.microsoft.com/kb/257757以获取更多信息。
OOXML
如果可能的话,你应该使用OOXml ,这是推荐的方式来处理与Office文档编程。
- 从PDF中提取数据并导入到Excel .NET中
- 使用Excel设置打印区域 – OpenXML
- Excel VSTO加载项错误 – 无法创build应用程序域
- 使用OleDB获取Excel工作表数据,但它是“随机”不读一行的单元格数据
- 如何区分excel单元格中的逗号和CSV中的逗号
- 使用Microsoft.Office.Interop.Excel将速度性能导出到excel文件
- 防止Workbooks.Open()使Excel在Windows资源pipe理器中可见
- 从Excel文件获取通过Excel JavaScript API for Office创build的绑定
- Excel:在Excel中获取周围的命名区域