首页 > 解决方案 > 如何添加键而不是值以稍后在开关中添加值

问题描述

我有一个开关,它通过一个 Excel 文档并在不同时间从不同的列中获取所有值。我在开关中的情况 1 中得到一个值,然后在情况 2 中得到一个值,以此类推。但是,如果我想首先在案例 1 中添加此值作为键,然后在案例 2 中添加值,我将如何处理?

        for (int i = 0; i < CorrectColumn.Count; i++)
        {
            for (int j = 2; j < rows; j++)
            {
               switch (i)
               {
                    case 1:
                        categories1.Category.Add(excellObj.getValuesFromCell(j, CorrectColumn[i]), null);
                        break;
                    case 2:
                        categories1.Category.Add(null, excellObj.getValuesFromCell(j, CorrectColumn[i]));
                        break;
               }
            }
         }            

标签: c#switch-statement

解决方案


这样做,那么它将起作用,在以下假设中:

  1. 键和值在工作表的同一行中指定。
  2. 键和值始终位于工作表的同一列中。
        for (int j = 2; j < rows; j++)
        {
            object key = null;
            object value = null;
            for (int i = 0; i < CorrectColumn.Count; i++)
            {
               switch (i)
               {
                    case 1:
                        key = excellObj.getValuesFromCell(j, CorrectColumn[i]);
                        break;
                    case 2:
                        value = excellObj.getValuesFromCell(j, CorrectColumn[i]);
                        break;
               }
            }
            categories1.Category.Add(key, value);


         } 

推荐阅读