如果您的DataTable的主键是两列,那么可以使用DataTable.Contains(object key)吗?

5
如果是这样,怎么做呢?
3个回答

4

如果您要按主键选择行,应该使用以下方法之一:

  • DataTable.Rows.Find(Object):如果您的PK只有一个列
  • DataTable.Rows.Find(Object[]):如果您的PK有多个列

对于类型化的DataSet,在DataRowCollection类中会为您生成相应签名的MyDataTable.Rows.Find(...)方法。


0

'Contains' 似乎不是 DataRow 类的成员(也许这是一个类型化数据集?)

无论如何,您始终可以使用 (DataTable.Select(....).Length > 0) 作为替代方案。


0

我猜你指的是DataRowCollection.Contains方法?有一个重载可以接受对象数组作为参数,你应该使用这个。


我尝试过了,但它告诉我:“期望索引的键有2个值,但只收到了1个值。” - Slim
你试过这个吗?table.Contains(new object[] { valueOfFirstKey, valueOfSecondKey }) - Thomas Levesque

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接