Get DataRows array from DataTable that match the filter criteria
DataRowArrayFromADataTableWithFilter.aspx
<%@ Page Language="C#" AutoEventWireup="true" %>
<%@ Import Namespace="System.Data" %>
<!DOCTYPE html>
<script runat="server">
void Button1_Click(object sender, System.EventArgs e)
{
DataTable dt = new DataTable();
dt.TableName = "Books";
DataColumn dc1 = new DataColumn();
dc1.ColumnName = "BookID";
dc1.DataType = typeof(int);
dc1.AllowDBNull = false;
dc1.Unique = true;
DataColumn dc2 = new DataColumn();
dc2.ColumnName = "BookName";
dc2.DataType = typeof(string);
DataColumn dc3 = new DataColumn();
dc3.ColumnName = "Author";
dc3.DataType = typeof(string);
dt.Columns.AddRange(new DataColumn[] { dc1,dc2,dc3 });
dt.Rows.Add(new object[] { 1, "Oracle SQL Tuning Pocket Reference", "Mark Gurry" });
dt.Rows.Add(new object[] { 2, "Java Programming with Oracle JDBC", "Donald Bales" });
dt.Rows.Add(new object[] { 3, "Oracle DBA Checklists Pocket Reference", "Quest Software" });
GridView1.DataSource = dt;
GridView1.DataBind();
//this line return a DataRow array from DataTable
DataRow[] drows = dt.Select("BookID < 3");
for (int i = 0; i < drows.Length;i++ )
{
dt.Rows[i]["BookName"] = dt.Rows[i]["BookName"].ToString().ToLower();
}
Label1.Text = "After updating filtered rows (make BookName lower case , BookID < 3)";
GridView2.DataSource = dt;
GridView2.DataBind();
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml">
<head id="Head1" runat="server">
<title>How to get a DataRow objects array from DataTable that match the filter criteria in ado.net</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<h2 style="color:DarkBlue; font-style:italic;">
How to get a DataRow objects array from
<br /> DataTable that match the filter criteria in ado.net
</h2>
<hr width="550" align="left" color="CornFlowerBlue" />
<asp:GridView
ID="GridView1"
runat="server"
BorderColor="Snow"
ForeColor="Snow"
Width="550"
>
<HeaderStyle BackColor="Purple" Height="35" />
<RowStyle BackColor="Magenta" />
<AlternatingRowStyle BackColor="MediumPurple" />
</asp:GridView>
<br />
<asp:Label
ID="Label1"
runat="server"
Font-Size="Large"
ForeColor="SkyBlue"
Font-Italic="true"
>
</asp:Label>
<br /><br />
<asp:GridView
ID="GridView2"
runat="server"
BorderColor="Snow"
ForeColor="Snow"
Width="550"
>
<HeaderStyle BackColor="Purple" Height="35" />
<RowStyle BackColor="Magenta" />
<AlternatingRowStyle BackColor="MediumPurple" />
</asp:GridView>
<asp:Button
ID="Button1"
runat="server"
OnClick="Button1_Click"
Text="Populate GridView"
Height="45"
Font-Bold="true"
ForeColor="DarkBlue"
/>
</div>
</form>
</body>
</html>
- How to delete a row from a DataTable
- How to count rows in a DataTable
- How to convert a DataTable to an array of rows
- How to create multi-column primary key for a DataTable
- How to use DataTable AcceptChanges() method
- How to use DataTable RowDeleting event
- How to copy one DataTable to another DataTable
- How to use DataTable Compute method
- How to merge two DataTables
- How to create a DataView