【问题标题】:Linq query on datatable数据表上的Linq查询
【发布时间】:2011-04-12 15:43:08
【问题描述】:

我有 2 个数据集 ds1 和 ds2 ds1 包含 ds2 中使用的有效值,例如ds1 包含包含数学、科学、历史的主题表。 ds2 包含 Student 表 Student 表包含 Subject 列。 ds2->Student->Subject 值应该出现在 ds->subject 表中。

如何以有效的方式实施这种类型的验证。我不想遍历学生表的每一行每一列。

例如 学生桌
名称 主题状态
彼得数学失败
乔治科学通行证
乔 IT 通行证
罗杰历史其他

科目表
主题
数学
科学
数学
历史

状态表
状态
通过
失败

现在我想根据主题表验证学生表中的数据检查主题是否存在于主题表中。在这里,我想要行 Joe IT,因为它不存在于 Subjects 表中,它是无效的。

同样,我需要用状态表检查学生表数据。


预期产出
学科 IT
状态其他

我想要 LINQ 查询。

【问题讨论】:

  • 目前我使用DataTable查询。
  • 到目前为止,您在 LINQ 查询中有什么问题,您在为什么而苦苦挣扎?

标签: c# linq lambda datatable dataset


【解决方案1】:

一个简单的方法:

var noSubject =
  ds.Student.AsEnumerable().Where(s => ds.Subject.Rows.Find(s.Subject) == null);

假设Subject ds 中的Subject 是PK。

【讨论】:

    猜你喜欢
    • 2014-02-08
    • 1970-01-01
    • 2019-02-10
    • 1970-01-01
    • 1970-01-01
    • 2018-04-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多