将对象分组到属性上的集合列表的集合列表中

时间:2013-11-21 14:15:30

标签: c# .net list

我正忙于分析和保存我的燃气表的数据。

数据来自ftp服务器上的纯文本文件,我有一个控制台应用程序将数据放入数据库。

每个文件都有一个新标题,然后每15分钟有一个新的数据行。数据被obis代码拆分,每个obis代码在数据库中获得一个新行。所以每15分钟就会在数据库中添加6个新行。每小时一个新的标题行等细节线每15分钟按顺序分开。

所以结构是:

标题表1行>详细表每个序列6行(1小时4行6行)

Headerdata
    Detail1 seq=0
    Detail2 seq=0
    Detail3 seq=0
    Detail4 seq=0
    Detail5 seq=0
    Detail6 seq=0
    Detail1 seq=1
    Detail2 seq=1
    Detail3 seq=1
    Detail4 seq=1
    Detail5 seq=1
    Detail6 seq=1
etc....

现在我尝试进行一些验证,然后将数据写入平面表。 但我只得到第一个序列。

我知道这必须更容易,但我在这里开头。

更新

我现在把大部分代码放在方法中。 然后实际的问题就出现了:

我有一个标题数据集合,在每个标题集中我有一个详细信息集合。每个细节都有一个属性序列。

我如何遍历细节选择并按顺序制作单独的组? 我想将集合的标题附加到每个组。

这可以在初始查询中由linq完成:

        public static void getMeterdata(string serial, string date, string interval)
    {
        meterdata = new List<Data_Header>();

        using (var db = new GasMeterDataContext())
        {
            // Query get all headers and their details and put in a list
            meterdata = (from h in db.Data_Header
                         .Where(h => h.Dh_Serial == serial && h.Dh_Timestamp.Contains(date)) 
                         .Include(d => d.Data_Detail)                      
                         orderby h.Dh_Timestamp
                         select h).ToList();
        }

    }

或者在列表中以最简单的方式进行第二次linq查询。

我是C#和Linq的新手。

0 个答案:

没有答案