【问题标题】:LINQ to DataSet and xml helpLINQ to DataSet 和 xml 帮助
【发布时间】:2010-07-21 20:29:45
【问题描述】:

我在数据集设计器中创建了一个强类型数据集。 DataSet 有一个名为 FocusOffsetsTable 的表,该表有四个列;序列号、过滤器、轮子和偏移量。我使用 DataSet 类的 ReadXml() 方法将 xml 文件中的强类型数据加载到数据集中。这似乎工作得很好。

我正在尝试使用 LINQ 表达式来尝试从该表中获取单行,但我似乎无法正确获取语法。我想使用Single()SingleOrDefault() 方法一次只获取一行数据,但我不确定如何。

我已经尝试过这个FocusOffsets.FocusOffsetsTableRow x = FocusOffsetData.FocusOffsetsTable.,但是这里没有 Single() 方法。我也试过这个...

 FocusOffsets.FocusOffsetsTableRow x = (from offset in FocusOffsetData.FocusOffsetsTable
                    where offset.SerialNumber == mydevice.SerialNumber
                    where offset.Wheel == WheelID
                    where offset.Filter == FilterNum
                    select offset).Single();

但是这里也没有 Single 方法。

我以前在 SQL 数据库中的表上做过此操作,但这是我第一次使用来自数据集设计器的数据集。

【问题讨论】:

    标签: linq dataset lambda


    【解决方案1】:

    您是否为 System.Linq 添加了 using 语句并包含对 System.Data.DataSetExtensions 的引用。我认为(但由于我在我的 Mac 上无法确认),你应该能够做到:

    var x = FocusOffsetData.FocusOffsetsTable
                           .AsEnumerable()
                           .SingleOrDefault( o => o.SerialNumber == mydevice.SerialNumber
                                                  && o.Wheel = WheelID
                                                  && o.Filter = FilterNum );
    

    【讨论】:

      猜你喜欢
      • 2011-10-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多