DataTable.Select Yöntem

Tanım

Bir nesne dizisi DataRow alır.

Aşırı Yüklemeler

Select()

Tüm DataRow nesnelerin dizisini alır.

Select(String)

Filtre ölçütleri ile eşleşen tüm DataRow nesnelerin dizisini alır.

Select(String, String)

Belirtilen sıralama düzeninde filtre ölçütleri ile eşleşen tüm DataRow nesnelerin dizisini alır.

Select(String, String, DataViewRowState)

Belirtilen durumla eşleşen sıralama sırasına göre filtreyle eşleşen tüm DataRow nesnelerin dizisini alır.

Select()

Kaynak:
DataTable.cs
Kaynak:
DataTable.cs
Kaynak:
DataTable.cs

Tüm DataRow nesnelerin dizisini alır.

C#
public System.Data.DataRow[] Select ();

Döndürülenler

Bir nesne dizisi DataRow .

Örnekler

Aşağıdaki örnek, yöntemi aracılığıyla Select bir nesne dizisi DataRow döndürür.

C#
private void GetRows()
{
    // Get the DataTable of a DataSet.
    DataTable table = DataSet1.Tables["Suppliers"];
    DataRow[] rows = table.Select();

    // Print the value one column of each DataRow.
    for(int i = 0; i < rows.Length ; i++)
    {
        Console.WriteLine(rows[i]["CompanyName"]);
    }
}

Açıklamalar

Doğru sıralama düzenini sağlamak için veya Select(String, String, DataViewRowState)ile Select(String, String) sıralama ölçütleri belirtin.

Ayrıca bkz.

Şunlara uygulanır

.NET 9 ve diğer sürümler
Ürün Sürümler
.NET Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 2.0, 2.1

Select(String)

Kaynak:
DataTable.cs
Kaynak:
DataTable.cs
Kaynak:
DataTable.cs

Filtre ölçütleri ile eşleşen tüm DataRow nesnelerin dizisini alır.

C#
public System.Data.DataRow[] Select (string? filterExpression);
C#
public System.Data.DataRow[] Select (string filterExpression);

Parametreler

filterExpression
String

Satırları filtrelemek için kullanılacak ölçüt.

Döndürülenler

Bir nesne dizisi DataRow .

Örnekler

Aşağıdaki örnek, bir nesne dizisi DataRow döndürmek için bir filtre ifadesi kullanır.

C#
private void GetRowsByFilter()
{
    DataTable table = DataSet1.Tables["Orders"];
    // Presuming the DataTable has a column named Date.
    string expression;
    expression = "Date > #1/1/00#";
    DataRow[] foundRows;

    // Use the Select method to find all rows matching the filter.
    foundRows = table.Select(expression);

    // Print column 0 of each returned row.
    for(int i = 0; i < foundRows.Length; i ++)
    {
        Console.WriteLine(foundRows[i][0]);
    }
}

Açıklamalar

Bağımsız değişkenini filterExpression oluşturmak için, filtre oluşturmak için sınıfın DataColumnExpression özellik değerine uygulanan kuralları kullanın.

Doğru sıralama düzenini sağlamak için veya Select(String, String, DataViewRowState)ile Select(String, String) sıralama ölçütleri belirtin.

Filtredeki sütun null değer içeriyorsa sonucun parçası olmaz.

Ayrıca bkz.

Şunlara uygulanır

.NET 9 ve diğer sürümler
Ürün Sürümler
.NET Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 2.0, 2.1

Select(String, String)

Kaynak:
DataTable.cs
Kaynak:
DataTable.cs
Kaynak:
DataTable.cs

Belirtilen sıralama düzeninde filtre ölçütleri ile eşleşen tüm DataRow nesnelerin dizisini alır.

C#
public System.Data.DataRow[] Select (string? filterExpression, string? sort);
C#
public System.Data.DataRow[] Select (string filterExpression, string sort);

Parametreler

filterExpression
String

Satırları filtrelemek için kullanılacak ölçüt.

sort
String

Sütunu ve sıralama yönünü belirten bir dize.

Döndürülenler

Filtre ifadesiyle eşleşen bir nesne dizisi DataRow .

Örnekler

Aşağıdaki örnek, bir nesne dizisi DataRow döndürmek için bir filtre ifadesi kullanır.

C#
using System;
using System.Data;

public class A {

   public static void Main() {
      DataTable table = new DataTable("Orders");
      table.Columns.Add("OrderID", typeof(Int32));
      table.Columns.Add("OrderQuantity", typeof(Int32));
      table.Columns.Add("CompanyName", typeof(string));
      table.Columns.Add("Date", typeof(DateTime));

      DataRow newRow = table.NewRow();
      newRow["OrderID"] = 1;
      newRow["OrderQuantity"] = 3;
      newRow["CompanyName"] = "NewCompanyName";
      newRow["Date"] = "1979, 1, 31";

      // Add the row to the rows collection.
      table.Rows.Add(newRow);

      DataRow newRow2 = table.NewRow();
      newRow2["OrderID"] = 2;
      newRow2["OrderQuantity"] = 2;
      newRow2["CompanyName"] = "NewCompanyName1";
      table.Rows.Add(newRow2);

      DataRow newRow3 = table.NewRow();
      newRow3["OrderID"] = 3;
      newRow3["OrderQuantity"] = 2;
      newRow3["CompanyName"] = "NewCompanyName2";
      table.Rows.Add(newRow3);

      // Presuming the DataTable has a column named Date.
      string expression = "Date = '1/31/1979' or OrderID = 2";
      // string expression = "OrderQuantity = 2 and OrderID = 2";

      // Sort descending by column named CompanyName.
      string sortOrder = "CompanyName ASC";
      DataRow[] foundRows;

      // Use the Select method to find all rows matching the filter.
      foundRows = table.Select(expression, sortOrder);

      // Print column 0 of each returned row.
      for (int i = 0; i < foundRows.Length; i++)
         Console.WriteLine(foundRows[i][2]);
   }
}

Açıklamalar

Bağımsız değişkeni oluşturmak filterExpression için sınıfın Expression özellik değerini oluşturmak DataColumn için aynı kuralları kullanın. bağımsız Sort değişkeni, sınıfın Expression dizelerini oluşturmak için de aynı kuralları kullanır.

Filtredeki sütun null değer içeriyorsa sonucun parçası olmaz.

Ayrıca bkz.

Şunlara uygulanır

.NET 9 ve diğer sürümler
Ürün Sürümler
.NET Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 2.0, 2.1

Select(String, String, DataViewRowState)

Kaynak:
DataTable.cs
Kaynak:
DataTable.cs
Kaynak:
DataTable.cs

Belirtilen durumla eşleşen sıralama sırasına göre filtreyle eşleşen tüm DataRow nesnelerin dizisini alır.

C#
public System.Data.DataRow[] Select (string? filterExpression, string? sort, System.Data.DataViewRowState recordStates);
C#
public System.Data.DataRow[] Select (string filterExpression, string sort, System.Data.DataViewRowState recordStates);

Parametreler

filterExpression
String

Satırları filtrelemek için kullanılacak ölçüt.

sort
String

Sütunu ve sıralama yönünü belirten bir dize.

recordStates
DataViewRowState

Değerlerden DataViewRowState biri.

Döndürülenler

Bir nesne dizisi DataRow .

Örnekler

Aşağıdaki örnek, bir nesne dizisi DataRow döndürmek için bir filtre ifadesi ve kayıt durumu kullanır.

C#
private static void GetRowsByFilter()
{
    DataTable customerTable = new DataTable("Customers");
    // Add columns
    customerTable.Columns.Add("id", typeof(int));
    customerTable.Columns.Add("name", typeof(string));

    // Set PrimaryKey
    customerTable.Columns[ "id" ].Unique = true;
    customerTable.PrimaryKey = new DataColumn[]
        { customerTable.Columns["id"] };

    // Add ten rows
    for(int id=1; id<=10; id++)
    {
        customerTable.Rows.Add(
            new object[] { id, string.Format("customer{0}", id) });
    }
    customerTable.AcceptChanges();

    // Add another ten rows
    for(int id=11; id<=20; id++)
    {
        customerTable.Rows.Add(
            new object[] { id, string.Format("customer{0}", id) });
    }

    string expression;
    string sortOrder;

    expression = "id > 5";
    // Sort descending by column named CompanyName.
    sortOrder = "name DESC";
    // Use the Select method to find all rows matching the filter.
    DataRow[] foundRows =
        customerTable.Select(expression, sortOrder,
        DataViewRowState.Added);

    PrintRows(foundRows, "filtered rows");

    foundRows = customerTable.Select();
    PrintRows(foundRows, "all rows");
}

private static void PrintRows(DataRow[] rows, string label)
{
    Console.WriteLine("\n{0}", label);
    if(rows.Length <= 0)
    {
        Console.WriteLine("no rows found");
        return;
    }
    foreach(DataRow row in rows)
    {
        foreach(DataColumn column in row.Table.Columns)
        {
            Console.Write("\table {0}", row[column]);
        }
        Console.WriteLine();
    }
}

Açıklamalar

Bağımsız değişkeni oluşturmak filterExpression için sınıfın Expression özellik değerini oluşturmak DataColumn için aynı kuralları kullanın. bağımsız Sort değişkeni, sınıfın Expression dizelerini oluşturmak için de aynı kuralları kullanır.

Filtredeki sütun null değer içeriyorsa sonucun parçası olmaz.

Ayrıca bkz.

Şunlara uygulanır

.NET 9 ve diğer sürümler
Ürün Sürümler
.NET Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 2.0, 2.1