Csharp/C Sharp by API/System.Data/DataView

Материал из .Net Framework эксперт
Перейти к: навигация, поиск

DataView.Find

<source lang="csharp">

using System; using System.Data; using System.Data.SqlClient; class FindingDataRowViews {

   public static void Main() {
       SqlConnection mySqlConnection =
         new SqlConnection(
           "server=localhost;database=Northwind;uid=sa;pwd=sa"
         );
       SqlCommand mySqlCommand = mySqlConnection.CreateCommand();
       mySqlCommand.rumandText =
         "SELECT CustomerID, CompanyName, Country " +
         "FROM Customers";
       SqlDataAdapter mySqlDataAdapter = new SqlDataAdapter();
       mySqlDataAdapter.SelectCommand = mySqlCommand;
       DataSet myDataSet = new DataSet();
       mySqlConnection.Open();
       mySqlDataAdapter.Fill(myDataSet, "Customers");
       mySqlConnection.Close();
       DataTable customersDT = myDataSet.Tables["Customers"];
       string filterExpression = "Country = "UK"";
       string sortExpression = "CustomerID";
       DataViewRowState rowStateFilter = DataViewRowState.OriginalRows;
       DataView customersDV = new DataView();
       customersDV.Table = customersDT;
       customersDV.RowFilter = filterExpression;
       customersDV.Sort = sortExpression;
       customersDV.RowStateFilter = rowStateFilter;
       foreach (DataRowView myDataRowView in customersDV) {
           for (int count = 0; count < customersDV.Table.Columns.Count; count++) {
               Console.WriteLine(myDataRowView[count]);
           }
           Console.WriteLine("");
       }
       int index = customersDV.Find("BSBEV");
       Console.WriteLine("BSBEV found at index " + index + "\n");
       DataRowView[] customersDRVs = customersDV.FindRows("BSBEV");
       foreach (DataRowView myDataRowView in customersDRVs) {
           for (int count = 0; count < customersDV.Table.Columns.Count; count++) {
               Console.WriteLine(myDataRowView[count]);
           }
           Console.WriteLine("");
       }
   }

}

 </source>


DataView.FindRows

<source lang="csharp">


using System; using System.Data; using System.Data.SqlClient; class FindingDataRowViews {

   public static void Main() {
       SqlConnection mySqlConnection =
         new SqlConnection(
           "server=localhost;database=Northwind;uid=sa;pwd=sa"
         );
       SqlCommand mySqlCommand = mySqlConnection.CreateCommand();
       mySqlCommand.rumandText =
         "SELECT CustomerID, CompanyName, Country " +
         "FROM Customers";
       SqlDataAdapter mySqlDataAdapter = new SqlDataAdapter();
       mySqlDataAdapter.SelectCommand = mySqlCommand;
       DataSet myDataSet = new DataSet();
       mySqlConnection.Open();
       mySqlDataAdapter.Fill(myDataSet, "Customers");
       mySqlConnection.Close();
       DataTable customersDT = myDataSet.Tables["Customers"];
       string filterExpression = "Country = "UK"";
       string sortExpression = "CustomerID";
       DataViewRowState rowStateFilter = DataViewRowState.OriginalRows;
       DataView customersDV = new DataView();
       customersDV.Table = customersDT;
       customersDV.RowFilter = filterExpression;
       customersDV.Sort = sortExpression;
       customersDV.RowStateFilter = rowStateFilter;
       foreach (DataRowView myDataRowView in customersDV) {
           for (int count = 0; count < customersDV.Table.Columns.Count; count++) {
               Console.WriteLine(myDataRowView[count]);
           }
           Console.WriteLine("");
       }
       int index = customersDV.Find("BSBEV");
       Console.WriteLine("BSBEV found at index " + index + "\n");
       DataRowView[] customersDRVs = customersDV.FindRows("BSBEV");
       foreach (DataRowView myDataRowView in customersDRVs) {
           for (int count = 0; count < customersDV.Table.Columns.Count; count++) {
               Console.WriteLine(myDataRowView[count]);
           }
           Console.WriteLine("");
       }
   }

}

 </source>


DataView.RowFilter

<source lang="csharp">

using System; using System.Data; using System.Data.SqlClient; class FindingDataRowViews {

 public static void Main()
 {
   SqlConnection mySqlConnection =new SqlConnection("server=(local)\\SQLEXPRESS;database=MyDatabase;Integrated Security=SSPI;");
   SqlCommand mySqlCommand = mySqlConnection.CreateCommand();
   mySqlCommand.rumandText =
     "SELECT ID, FirstName, LastName " +
     "FROM Employee";
   SqlDataAdapter mySqlDataAdapter = new SqlDataAdapter();
   mySqlDataAdapter.SelectCommand = mySqlCommand;
   DataSet myDataSet = new DataSet();
   mySqlConnection.Open();
   mySqlDataAdapter.Fill(myDataSet, "Employee");
   mySqlConnection.Close();
   DataTable employeeDT = myDataSet.Tables["Employee"];
   string filterExpression = "ID = 9";
   string sortExpression = "ID";
   DataViewRowState rowStateFilter = DataViewRowState.OriginalRows;
   DataView employeeDV = new DataView();
   employeeDV.Table = employeeDT;
   employeeDV.RowFilter = filterExpression;
   employeeDV.Sort = sortExpression;
   employeeDV.RowStateFilter = rowStateFilter;
   foreach (DataRowView myDataRowView in employeeDV)
   {
     for (int count = 0; count < employeeDV.Table.Columns.Count; count++)
     {
       Console.WriteLine(myDataRowView[count]);
     }
     Console.WriteLine("");
   }
   int index = employeeDV.Find("8");
   Console.WriteLine("8 found at index " + index + "\n");
   DataRowView[] employeeDRVs = employeeDV.FindRows("8");
   foreach (DataRowView myDataRowView in employeeDRVs)
   {
     for (int count = 0; count < employeeDV.Table.Columns.Count; count++)
     {
       Console.WriteLine(myDataRowView[count]);
     }
     Console.WriteLine("");
   }
 }

}

 </source>


DataView.RowStateFilter

<source lang="csharp">

using System; using System.Data; using System.Data.SqlClient; class FindingDataRowViews {

 public static void Main()
 {
   SqlConnection mySqlConnection =new SqlConnection("server=(local)\\SQLEXPRESS;database=MyDatabase;Integrated Security=SSPI;");
   SqlCommand mySqlCommand = mySqlConnection.CreateCommand();
   mySqlCommand.rumandText =
     "SELECT ID, FirstName, LastName " +
     "FROM Employee";
   SqlDataAdapter mySqlDataAdapter = new SqlDataAdapter();
   mySqlDataAdapter.SelectCommand = mySqlCommand;
   DataSet myDataSet = new DataSet();
   mySqlConnection.Open();
   mySqlDataAdapter.Fill(myDataSet, "Employee");
   mySqlConnection.Close();
   DataTable employeeDT = myDataSet.Tables["Employee"];
   string filterExpression = "ID = 9";
   string sortExpression = "ID";
   DataViewRowState rowStateFilter = DataViewRowState.OriginalRows;
   DataView employeeDV = new DataView();
   employeeDV.Table = employeeDT;
   employeeDV.RowFilter = filterExpression;
   employeeDV.Sort = sortExpression;
   employeeDV.RowStateFilter = rowStateFilter;
   foreach (DataRowView myDataRowView in employeeDV)
   {
     for (int count = 0; count < employeeDV.Table.Columns.Count; count++)
     {
       Console.WriteLine(myDataRowView[count]);
     }
     Console.WriteLine("");
   }
   int index = employeeDV.Find("8");
   Console.WriteLine("8 found at index " + index + "\n");
   DataRowView[] employeeDRVs = employeeDV.FindRows("8");
   foreach (DataRowView myDataRowView in employeeDRVs)
   {
     for (int count = 0; count < employeeDV.Table.Columns.Count; count++)
     {
       Console.WriteLine(myDataRowView[count]);
     }
     Console.WriteLine("");
   }
 }

}

 </source>


DataView.Sort

<source lang="csharp">

using System; using System.Data; using System.Data.SqlClient; class FindingDataRowViews {

 public static void Main()
 {
   SqlConnection mySqlConnection =new SqlConnection("server=(local)\\SQLEXPRESS;database=MyDatabase;Integrated Security=SSPI;");
   SqlCommand mySqlCommand = mySqlConnection.CreateCommand();
   mySqlCommand.rumandText =
     "SELECT ID, FirstName, LastName " +
     "FROM Employee";
   SqlDataAdapter mySqlDataAdapter = new SqlDataAdapter();
   mySqlDataAdapter.SelectCommand = mySqlCommand;
   DataSet myDataSet = new DataSet();
   mySqlConnection.Open();
   mySqlDataAdapter.Fill(myDataSet, "Employee");
   mySqlConnection.Close();
   DataTable employeeDT = myDataSet.Tables["Employee"];
   string filterExpression = "ID = 9";
   string sortExpression = "ID";
   DataViewRowState rowStateFilter = DataViewRowState.OriginalRows;
   DataView employeeDV = new DataView();
   employeeDV.Table = employeeDT;
   employeeDV.RowFilter = filterExpression;
   employeeDV.Sort = sortExpression;
   employeeDV.RowStateFilter = rowStateFilter;
   foreach (DataRowView myDataRowView in employeeDV)
   {
     for (int count = 0; count < employeeDV.Table.Columns.Count; count++)
     {
       Console.WriteLine(myDataRowView[count]);
     }
     Console.WriteLine("");
   }
   int index = employeeDV.Find("8");
   Console.WriteLine("8 found at index " + index + "\n");
   DataRowView[] employeeDRVs = employeeDV.FindRows("8");
   foreach (DataRowView myDataRowView in employeeDRVs)
   {
     for (int count = 0; count < employeeDV.Table.Columns.Count; count++)
     {
       Console.WriteLine(myDataRowView[count]);
     }
     Console.WriteLine("");
   }
 }

}

 </source>


DataView.Table

<source lang="csharp">

using System; using System.Data; using System.Data.SqlClient; class FindingDataRowViews {

 public static void Main()
 {
   SqlConnection mySqlConnection =new SqlConnection("server=(local)\\SQLEXPRESS;database=MyDatabase;Integrated Security=SSPI;");
   SqlCommand mySqlCommand = mySqlConnection.CreateCommand();
   mySqlCommand.rumandText =
     "SELECT ID, FirstName, LastName " +
     "FROM Employee";
   SqlDataAdapter mySqlDataAdapter = new SqlDataAdapter();
   mySqlDataAdapter.SelectCommand = mySqlCommand;
   DataSet myDataSet = new DataSet();
   mySqlConnection.Open();
   mySqlDataAdapter.Fill(myDataSet, "Employee");
   mySqlConnection.Close();
   DataTable employeeDT = myDataSet.Tables["Employee"];
   string filterExpression = "ID = 9";
   string sortExpression = "ID";
   DataViewRowState rowStateFilter = DataViewRowState.OriginalRows;
   DataView employeeDV = new DataView();
   employeeDV.Table = employeeDT;
   employeeDV.RowFilter = filterExpression;
   employeeDV.Sort = sortExpression;
   employeeDV.RowStateFilter = rowStateFilter;
   foreach (DataRowView myDataRowView in employeeDV)
   {
     for (int count = 0; count < employeeDV.Table.Columns.Count; count++)
     {
       Console.WriteLine(myDataRowView[count]);
     }
     Console.WriteLine("");
   }
   int index = employeeDV.Find("8");
   Console.WriteLine("8 found at index " + index + "\n");
   DataRowView[] employeeDRVs = employeeDV.FindRows("8");
   foreach (DataRowView myDataRowView in employeeDRVs)
   {
     for (int count = 0; count < employeeDV.Table.Columns.Count; count++)
     {
       Console.WriteLine(myDataRowView[count]);
     }
     Console.WriteLine("");
   }
 }

}

 </source>


DataView.Table.Columns

<source lang="csharp">


using System; using System.Data; using System.Data.SqlClient; class FindingDataRowViews {

   public static void Main() {
       SqlConnection mySqlConnection =
         new SqlConnection(
           "server=localhost;database=Northwind;uid=sa;pwd=sa"
         );
       SqlCommand mySqlCommand = mySqlConnection.CreateCommand();
       mySqlCommand.rumandText =
         "SELECT CustomerID, CompanyName, Country " +
         "FROM Customers";
       SqlDataAdapter mySqlDataAdapter = new SqlDataAdapter();
       mySqlDataAdapter.SelectCommand = mySqlCommand;
       DataSet myDataSet = new DataSet();
       mySqlConnection.Open();
       mySqlDataAdapter.Fill(myDataSet, "Customers");
       mySqlConnection.Close();
       DataTable customersDT = myDataSet.Tables["Customers"];
       string filterExpression = "Country = "UK"";
       string sortExpression = "CustomerID";
       DataViewRowState rowStateFilter = DataViewRowState.OriginalRows;
       DataView customersDV = new DataView();
       customersDV.Table = customersDT;
       customersDV.RowFilter = filterExpression;
       customersDV.Sort = sortExpression;
       customersDV.RowStateFilter = rowStateFilter;
       foreach (DataRowView myDataRowView in customersDV) {
           for (int count = 0; count < customersDV.Table.Columns.Count; count++) {
               Console.WriteLine(myDataRowView[count]);
           }
           Console.WriteLine("");
       }
       int index = customersDV.Find("BSBEV");
       Console.WriteLine("BSBEV found at index " + index + "\n");
       DataRowView[] customersDRVs = customersDV.FindRows("BSBEV");
       foreach (DataRowView myDataRowView in customersDRVs) {
           for (int count = 0; count < customersDV.Table.Columns.Count; count++) {
               Console.WriteLine(myDataRowView[count]);
           }
           Console.WriteLine("");
       }
   }

}

 </source>