コード例 #1
0
ファイル: MongoPlugin.cs プロジェクト: Arxivar/SamplePlugins
        private object[,] BuildMatrixFromResult(DataResult parsedResult)
        {
            var columns = ColumnSelection.Split(';', StringSplitOptions.RemoveEmptyEntries);

            if (!columns.Any())
            {
                throw new ArgumentException("No columns to display have been selected");
            }

            var matrix        = new object[parsedResult.Data.Count, columns.Length];
            var columnIndexes = new List <int>();

            foreach (var colName in columns)
            {
                var column = parsedResult.Columns.FirstOrDefault(x => x.Id == colName);
                if (column != null)
                {
                    columnIndexes.Add(parsedResult.Columns.IndexOf(column));
                }
            }

            for (var i = 0; i < parsedResult.Data.Count; i++)
            {
                for (var j = 0; j < columnIndexes.Count; j++)
                {
                    matrix.SetValue(parsedResult.Data[i][columnIndexes[j]], i, j);
                }
            }

            return(matrix);
        }