首页 > 解决方案 > 硬编码单元测试用例的 Excel 工作表的输入(合并单元格范围的值)

问题描述

-- 从一系列合并单元格中获取值的代码 --

 Microsoft.Office.Interop.Excel.Range range = sheet.get_Range(valueColumnAddress);
                                                System.Array rawValues = (System.Array)range.Cells.Value2;

-- 调试时观察到的返回值的格式 --

rawValues -> System.Array{object[,]}
{
[1,1] - "value 1", 
[2,1] - "value 2",
[3,1] - "value 3",
[4,1] - "value 4"
} each of type (object{string})

使用下面的方法将上面的 Object Array 转换为 String Array

string[] ConvertToStringArray(System.Array values)
    {


        string[] theArray = new string[values.Length];

        for (int i = 1; i <= values.Length; i++)
        {
            if (values.GetValue(i, 1) == null)
                theArray[i - 1] = "";
            else
                theArray[i - 1] = (string)values.GetValue(i, 1).ToString();
        }

        return theArray;
    }

要测试上述方法如何硬编码输入值,即 rawValues。请帮我解决这个问题

标签: c#

解决方案


推荐阅读