// dt.Rows[i]["pos"] 如下示例
//{0,0}
//{1,0}
//{2,0}
//{3,0}
//{4,0}
//{5,0}
List<int[]> lstInt = new List<int[]>();
            for (int i = 0; i < dt.Rows.Count; i++)
            {
                int[] intTemp = Array.ConvertAll<string, int>(dt.Rows[i]["pos"].ToString().Split(‘,‘), s => int.Parse(s));
                lstInt.Add(intTemp);
               
            }
            //int[][] blk_pos = lstInt.ToArray();
            int[,] blk_pos = ToMultidimensionalArray(lstInt);
//转换方法
 static int[,] ToMultidimensionalArray(List<int[]> arrayList)
        {
            int[,] mdArray = new int[arrayList.Count, arrayList[0].Length];
            int rowIndex = 0;
            arrayList.ForEach(x =>
            {
                Buffer.BlockCopy(
                    x, // src
                    0, // srcOffset
                    mdArray, // dst
                    rowIndex++ * mdArray.GetLength(1) * sizeof(int), // dstOffset
                    x.Length * sizeof(int)); // count                
            });
            return mdArray;
        }
原文:https://www.cnblogs.com/jtcr/p/15008005.html