DataSet ds = new DataSet(); DataTable dt = new DataTable(); dt.Columns.Add("ID", typeof(int)); dt.Columns.Add("Name", typeof(string)); dt.Columns.Add("Exists", typeof(bool)); ds.Tables.Add(dt); DataRow dr = dt.NewRow(); dr[0] = 1; dr[1] = "Name 1"; dr[2] = true; dt.Rows.Add(dr); dr = dt.NewRow(); dr[0] = 2; dr[1] = "Name 2"; dr[2] = false; dt.Rows.Add(dr); dr = dt.NewRow(); dr[0] = 3; dr[1] = "Name 3"; dr[2] = true; dt.Rows.Add(dr); dr = dt.NewRow(); dr[0] = 4; dr[1] = "Name 4"; dr[2] = false; dt.Rows.Add(dr);
Select(filterExpression, sort as string)
sort: UMa string específica, a coluna e sua direção
Retorna um array de System.Data.DataRow
A chamada simples
code]DataRow[] drs = ds.Tables[0].Select("ID = 1");[/code]
As seguintes seleção da chamada corretamente, mas não filtram (não deveria retornar nenhuma fileira mas retorna 2): [para .NET Framework 1.1 Service Pack 1]
The following call sorts properly, but does not filter (should return no rows but it returns 2):
DataRow[] drs = ds.Tables[0].Select("((ID in (1,2,3,4))) AND ((Exists = 1)) AND (Exists = 0)", "ID DESC");
E esta chamada filtra está bem, mas não classifica corretamente: [para .NET Framework 1.1 Service Pack 1]
And this call filters ok, but does not sort properly:
DataRow[] drs = ds.Tables[0].Select("(ID in (1,2,3,4)) AND (Exists = 1)", "Name DESC");
Embora mesmos se chamem mas classificar pelo ID trabalha muito bem: [para .NET Framework 1.1 Service Pack 1]
Although same call but sorting by ID works fine:
DataRow[] drs = ds.Tables[0].Select("(ID in (1,2,3,4)) AND (Exists = 1)", "ID DESC");
http://community.axo...select-bug.aspx
http://support.micro...kb;en-us;891742