zoukankan      html  css  js  c++  java
  • DataTable行列转换

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Data.SqlClient;
    using System.Data;
    namespace columnChange
    {
        class Program
        {
            static void Main(string[] args)
            {
                SqlConnection conn = new SqlConnection(@"Data Source=.\SQLEXPRESS;Initial Catalog=Test;User ID=××××;Password=××××");
                using (conn)
                {
                    conn.Open();
                    SqlDataAdapter apt = new SqlDataAdapter("select top 10 * from news ", conn);
                    DataTable tb = new DataTable();
                    apt.Fill(tb);
                    DataTable tt = Col2Row(tb, "articleId");
    
                }
            }
            /// <summary>
            /// 将DataTable行列转换
            /// </summary>
            /// <param name="src">要转换的DataTable</param>
            /// <param name="columnHead">要作为Column的哪列</param>
            /// <returns></returns>
            public static DataTable Col2Row(DataTable src, int columnHead)
            {
                DataTable result = new DataTable();
                DataColumn myHead = src.Columns[columnHead];
                result.Columns.Add(myHead.ColumnName);
                for (int i = 0; i < src.Rows.Count; i++)
                {
                    result.Columns.Add(src.Rows[i][myHead].ToString());
                }
                //
                foreach (DataColumn col in src.Columns)
                {
                    if (col == myHead)
                        continue;
                    object[] newRow = new object[src.Rows.Count + 1];
                    newRow[0] = col.ColumnName;
                    for (int i = 0; i < src.Rows.Count; i++)
                    {
                        newRow[i + 1] = src.Rows[i][col];
                    }
                    result.Rows.Add(newRow);
                }
                return result;
            }
    
            public static DataTable Col2Row(DataTable src, string columnHead)
            {
                for (int i = 0; i < src.Columns.Count; i++)
                {
                    if (src.Columns[i].ColumnName.ToUpper () == columnHead.ToUpper())
                        return Col2Row(src, i);
                }
                return new DataTable();
            }
        }
    }
    

  • 相关阅读:
    html HTML 文本格式化
    纯css3实现图片切换
    绝对路径和相对路径
    CSS设置html网页背景图片 CSS设置网页背景颜色
    使用CSS3制作响应式网页背景图像
    CSS背景全攻略
    HTML中通过CSS设置背景图片自适应浏览器大小
    CSS设置背景——图片背景
    如何让图片自适应手机等移动设备屏幕大小
    SERVER 2012 R2 对域用户禁用移动存储设备
  • 原文地址:https://www.cnblogs.com/daretodream/p/2194054.html
Copyright © 2011-2022 走看看