Sdílet prostřednictvím


DataTable.CaseSensitive Vlastnost

Definice

Určuje, zda porovnání řetězců v tabulce rozlišují malá a velká písmena.

public:
 property bool CaseSensitive { bool get(); void set(bool value); };
public bool CaseSensitive { get; set; }
[System.Data.DataSysDescription("DataTableCaseSensitiveDescr")]
public bool CaseSensitive { get; set; }
member this.CaseSensitive : bool with get, set
[<System.Data.DataSysDescription("DataTableCaseSensitiveDescr")>]
member this.CaseSensitive : bool with get, set
Public Property CaseSensitive As Boolean

Hodnota vlastnosti

true pokud se při porovnání rozlišují malá a velká písmena; jinak false. Výchozí hodnota je nastavena na vlastnost nadřazeného DataSet objektu CaseSensitive nebo false pokud DataTable byla vytvořena nezávisle na objektu DataSet.

Atributy

Příklady

Následující příklad volá metodu Select dvakrát na DataTable. Poprvé je vlastnost nastavená CaseSensitive na false, druhá na true.

private static void ToggleCaseSensitive()
{
    DataTable t;
    DataRow[] foundRows;

    t = CreateDataSet().Tables[0];

    t.CaseSensitive = false;
    foundRows = t.Select("item = 'abc'");

    // Print out DataRow values.
    PrintRowValues(foundRows, "CaseSensitive = False");

    t.CaseSensitive = true;
    foundRows = t.Select("item = 'abc'");

    PrintRowValues(foundRows, "CaseSensitive = True");
}

public static DataSet CreateDataSet()
{
    // Create a DataSet with one table, two columns
    DataSet ds = new DataSet();
    DataTable t = new DataTable("Items");

    // Add table to dataset
    ds.Tables.Add(t);

    // Add two columns
    DataColumn c;

    // First column
    c = t.Columns.Add("id", typeof(int));
    c.AutoIncrement = true;

    // Second column
    t.Columns.Add("item", typeof(string));

    // Set primary key
    t.PrimaryKey = new DataColumn[] { t.Columns["id"] };

    // Add twelve rows
    for (int i = 0; i < 10; i++)
    {
        t.Rows.Add(new object[] { i, i.ToString() });
    }
    t.Rows.Add(new object[] { 11, "abc" });
    t.Rows.Add(new object[] { 15, "ABC" });

    return ds;
}

private static void PrintRowValues(DataRow[] rows, string label)
{
    Console.WriteLine();
    Console.WriteLine(label);
    if (rows.Length <= 0)
    {
        Console.WriteLine("no rows found");
        return;
    }
    foreach (DataRow r in rows)
    {
        foreach (DataColumn c in r.Table.Columns)
        {
            Console.Write("\t {0}", r[c]);
        }
        Console.WriteLine();
    }
}

Private Sub ToggleCaseSensitive()
    Dim t As DataTable
    Dim foundRows() As DataRow

    t = CreateDataSet().Tables(0)

    t.CaseSensitive = False
    foundRows = t.Select("item = 'abc'")

    ' Print out DataRow values. Row 0 contains the value we're looking for.
    PrintRowValues(foundRows, "CaseSensitive = False")

    t.CaseSensitive = True
    foundRows = t.Select("item = 'abc'")

    PrintRowValues(foundRows, "CaseSensitive = True")
End Sub

Public Function CreateDataSet() As DataSet
    ' Create a DataSet with one table, two columns
    Dim ds As New DataSet
    Dim t As New DataTable("Items")

    ' Add table to DataSet
    ds.Tables.Add(t)

    ' Add two columns
    Dim c As DataColumn

    ' First column
    c = t.Columns.Add("id", Type.GetType("System.Int32"))
    c.AutoIncrement = True

    ' Second column
    t.Columns.Add("item", Type.GetType("System.String"))

    ' Set primary key
    t.PrimaryKey = New DataColumn() {t.Columns("id")}

    For i As Integer = 0 To 9
        t.Rows.Add(New Object() {i, i.ToString()})
    Next
    t.Rows.Add(New Object() {11, "abc"})
    t.Rows.Add(New Object() {15, "ABC"})

    CreateDataSet = ds
End Function

Private Sub PrintRowValues(ByRef rows As DataRow(), ByVal label As String)
    Console.WriteLine()
    Console.WriteLine(label)
    If rows.Length <= 0 Then
        Console.WriteLine("no rows found")
        Return
    End If

    For Each r As DataRow In rows
        For Each c As DataColumn In r.Table.Columns
            Console.Write(vbTab & " {0}", r(c))
        Next
        Console.WriteLine()
    Next
End Sub

Poznámky

Vlastnost CaseSensitive ovlivňuje porovnávání řetězců při řazení, vyhledávání a filtrování.

Platí pro

Viz také