我想打印出 Typed 数据集中的表数以及与每个表关联的字段数和关键字段 {primary,foreign}。如何使用 LINQ 获取此信息?
1 回答
5
即使它是一个类型化的数据集,您仍然可以使用 DataSet 的 DataTables 属性和 DataTable 的 DataColumns 属性。但是,要将 Linq 与这些一起使用,您必须调用.OfType<DataTable>()
或.OfType<DataColumn>()
在适当的属性上将其转换为 IEnumerable<>,以便您可以对它们运行 Linq 查询。之后,您应该只需要检查相应的属性即可找出主键或外键。我不确定最后一部分是否存在这些值的属性,或者您是否必须检查数据关系以确定这一点。
编辑:DataTable 上实际上有一个 PrimaryKey 属性,它将返回组成 PrimaryKey 的 DataColumns 的数组。对于外键,我相信您必须深入研究 DataRelations 集合以确定哪些列是外键。
于 2009-12-22T13:03:40.137 回答