IndexOf()方法始终返回-1

Any*_*are 2 c# asp.net

我有两个具有相同结构的数据表

第一个有第二个的一行

第二个有行集

我想要的是获取第二个数据表中第一个数据表的行旁边的行.

他的名字是第一个数据表:: temp

他的名字是第二个数据表:: dt

我做以下事情:

DataTable temp = new DataTable();
temp = dt.Clone();
DataColumn[] keyColumn = new DataColumn[1];
keyColumn[0] = temp.Columns["photoId"];
temp.PrimaryKey = keyColumn;
temp = (DataTable)(Session["currentImage"]);
DataRow[] drr = new DataRow[1];

index = dt.Rows.IndexOf(temp.Rows[0]);
Run Code Online (Sandbox Code Playgroud)

但索引始终带有一个值= -1

虽然temp.rows [0]的内容一直在变化

当我写dt.Rows.IndexOf(dt.Rows [1])为考试我得到1

但这不是我想要做的,我想要做的就是在第二个dataTable中获取第一个dataTable的数据行旁边的数据行

请帮我.

Jon*_*eet 6

A DataRow知道它在哪个表中,因此具有相同数据但在不同表中的两行仍然是不同的行.

为什么不查找具有相同主ID的行,或者在您的情况下其他任何有意义的行?