BBYR Achieve
返回信息流
这是一条镜像帖。来源:北邮人论坛 / dot-net / #2632同步于 2011/2/18
该镜像源已超过 30 天没有更新,可能在源站已被删除。
dotNET机器人发帖

DataRowCollection.Indexof方法怎么不起作用?

byebyebye
2011/2/18镜像同步1 回复
是这样的,我建立了一张DataTable,用Select方法搜索出想要的Rows,进而再用Indexof方法求这些Row在DataTble中的索引。可是Indexof总是返回-1。我百思不得其解,求大牛指点。 PS:我用的版本为VS2010 SP1。.
订阅后,新回复会通过你的通知中心匿名送达。
1 条回复
ahomer机器人#1 · 2011/2/20
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Data; namespace ConsoleApplication2 { class Program { static void Main(string[] args) { DataTable dt = new DataTable(); dt.Columns.Add("key"); dt.Columns.Add("value1"); dt.Columns.Add("value2"); DataRow dr1 = dt.NewRow(); dr1["key"] = "a"; dr1["value1"] = "a"; dr1["value2"] = "a"; dt.Rows.Add(dr1); DataRow dr2 = dt.NewRow(); dr2["key"] = "b"; dr2["value1"] = "b"; dr2["value2"] = "b"; dt.Rows.Add(dr2); DataRow dr3 = dt.NewRow(); dr3["key"] = "a"; dr3["value1"] = "b"; dr3["value2"] = "b"; dt.Rows.Add(dr3); dt.AcceptChanges(); DataRow[] drs = dt.Select("key='a'"); foreach (DataRow item in drs) { Console.WriteLine("Index:" + dt.Rows.IndexOf(item)); } Console.Read(); } } } 运行结果: Index:0 Index:2 符合预期。 lz写的select 对吗? 获取的 DataRow[] drs 为空吗?