2010-08-20 61 views

回答

0

This link表明,这种代码从数据表中获得不同的值:

DataTable distinctTable = originalTable.DefaultView.ToTable(true); 

在ToTable “真实” 的说法()方法意味着它得到不同的值。

0

作为替代,还可以通过使用LINQ去LINQ路线数据集扩展:

using System.Data; 

class Program { 

    static DataTable dtPosts = new DataTable(); 

    static void Main(string[] args) { 
    //some work here to fill the table, etc. 

    //select distinct rows, and only two fields from those rows... 
    var rows = (from p in dtPosts.AsEnumerable() 
      select new 
      { 
       Title = p.Field<string>("Title"), 
       Body = p.Field<string>("Body") 
      }).Distinct(); 

    Console.WriteLine("Select distinct count = {0}", rows.Count()); 
    Console.ReadLine(); 
    } 
} 

取决于你想要做什么。以为我把它添加到线程。希望能帮助到你!