如何使用LINQ to实体将gridview中的数据转换为新的gridview?

时间:2012-02-15 20:32:52

标签: linq entity-framework datagridview ado.net-entity-data-model

我是LINQ的新手,并希望得到任何知道如何使用linq将数据转换为网格数据的人的帮助?任何帮助将非常感激。 提前谢谢。

...从

ID    Date        Amount
1      2/1/2012   100
2      2/2/2012   200
3      2/3/2010   300

为...

ID     1           2         3
Date   2/1/2012   2/2/2012   2/3/2012
Amount 100        200        300

等...

我有这个脚本并试图将它用于我的目的,但我无法让它工作。现在我收到此错误消息 “'DBModel.Table1'不包含'Columns'的定义,也没有扩展方法'Columns'接受类型为'DBModel.Table1'的第一个参数'(您是否缺少using指令或程序集引用) ?)和行“'DBModel.Table1'的相同错误消息不包含'行'的定义” - 跟我一起来自数据库和sql世界,所以所有的帮助都会很精彩。

private Table1 GetTransposedTable(Table1 fc)
        {
            Table1 newTable = new Table1();
            newTable.Columns.Add(new DataColumn("0", typeof(string)));
            for (int i = 0; i < fc.Columns.Count; i++)
            {
                DataRow newRow = newTable.NewRow();
                newRow[0] = Convert.ToInt32(Session["Table1_ID"].ToString());
                for (int j = 1; j <= fc.Rows.Count; j++)
                {
                    if (newTable.Columns.Count < fc.Rows.Count + 1)
                        newTable.Columns.Add(new DataColumn(j.ToString(), typeof(string)));
                    newRow[j] = fc.Rows[j - 1][i];
                }
                newTable.Rows.Add(newRow);
            }
            return newTable;
                }

1 个答案:

答案 0 :(得分:0)

我建议使用像ListView这样的可模板控件,而不是在可能的情况下转换数据。我猜其中的一部分取决于您与DataGrid绑定了多少功能,但我认为大部分内容都会受到格式更改的破坏。

有关使用ListView的信息,请访问:http://msdn.microsoft.com/en-us/library/bb398790.aspx