惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

美团技术团队
B
Blog RSS Feed
博客园_首页
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
Google DeepMind News
Google DeepMind News
D
Docker
Blog — PlanetScale
Blog — PlanetScale
M
MIT News - Artificial intelligence
C
Check Point Blog
The Cloudflare Blog
T
Tailwind CSS Blog
大猫的无限游戏
大猫的无限游戏
量子位
The GitHub Blog
The GitHub Blog
Microsoft Azure Blog
Microsoft Azure Blog
I
InfoQ
T
The Blog of Author Tim Ferriss
博客园 - 【当耐特】
Vercel News
Vercel News
P
Proofpoint News Feed
Hugging Face - Blog
Hugging Face - Blog
V
V2EX
博客园 - 司徒正美

博客园 - 杨丹

AllanCodeMaker 代码生成器 release0.9.0 下载 支持C#,Java,可自订模板 Windows 10和Visual Studio 2015 能给.Net方向的开发从业者带来什么? 重写代码生成器支持模板(多层架构,MVC),多语言c#,java;支持mysql和sqlserver,动态编译 准备再次开始更新文章,做了10年.net,有项目需要转java 在WPF使用FolderBrowserDialog和OpenFileDialog。 .net4.0 和win7+iis7.5+vs2010了,配置项目时的问题。 试试live writer写cnblog LMS系统优化 WCF运行错误:“此集合已经包含方案 http 的地址”的解决办法 - 杨丹 中国房地产的实质 十六句经商名言 GridView中的数据导出为Excel【转】,和以前的有变化 [转]解决PowerDesigner中Name与Code同步的问题。 PowerDesigner Name/Code自动调整 [转] sql server 批量修改表和存储过程的所有者。 孤独 Ajax.net 错误 Could not load type 'Microsoft.Web.Extensions.Design.Dll'解决方法. 隐藏横向滚动条不成功的解决方案 - 杨丹 - 博客园 用javascript写的类似ModalPopupExtender控件的效果(因为自己没有学会用ModalPopupExtender调用服务器端方法)
DataTable行列转置,实现横向显示数据记录
杨丹 · 2006-11-27 · via 博客园 - 杨丹
城市 员工人数
成都 10
深圳 8
北京 9
上海 3
大连

6

横向

城市 成都 深圳 北京 上海 大连
员工人数 10 8 9 3 6

以前早就遇到过需要横向显示数据记录的问题,但都用其他方法敷衍过去了,今天又遇到这个问题。心里不是滋味,狠了一下心,决定想想怎么实现。
最后还是决定在datatable中进行行列的转置,所以先将您的数据都填充到datatable中。
假设您的原始datatale是dt,在dt后加入下面的语句

      DataTable dtNew = new DataTable();
        dtNew.Columns.Add("ColumnName", typeof(string));
        for (int i = 0; i < dt.Rows.Count; i++)
       {
            dtNew.Columns.Add("Column" + (i + 1).ToString(), typeof(string));
       }
        foreach (DataColumn dc in dt.Columns)
        {
            DataRow drNew = dtNew.NewRow();
            drNew["ColumnName"] = dc.ColumnName;
            for (int i = 0; i < dt.Rows.Count; i++)
            {
                drNew[i + 1] = dt.Rows[i][dc].ToString();
            }
            dtNew.Rows.Add(drNew);
        }

经过上面的语句,您的dt就已经成功转置了,你可以直接用它作为datagrid 或者gridview的数据源。