DataTable.CaseSensitive DataTable.CaseSensitive DataTable.CaseSensitive DataTable.CaseSensitive Property


테이블 내의 문자열을 비교할 때 대/소문자를 구분할지 여부를 나타냅니다.Indicates whether string comparisons within the table are case-sensitive.

 property bool CaseSensitive { bool get(); void set(bool value); };
public bool CaseSensitive { get; set; }
member this.CaseSensitive : bool with get, set
Public Property CaseSensitive As Boolean

속성 값

비교할 때 대/소문자를 구분하면 true이고, 그렇지 않으면 false입니다.true if the comparison is case-sensitive; otherwise false. 기본값은 부모 DataSet 개체의 CaseSensitive 속성으로 설정되거나, DataTable과 별도로 만들어진 DataSet의 경우 false로 설정됩니다.The default is set to the parent DataSet object's CaseSensitive property, or false if the DataTable was created independently of a DataSet.


다음 예제에서는 합니다 Select 메서드를 두 번을 DataTable입니다.The following example calls the Select method twice on a DataTable. 처음으로는 CaseSensitive 속성이 false를 두 번째 true입니다.The first time, the CaseSensitive property is set to false, the second, to 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

    // 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)
    if (rows.Length <= 0)
        Console.WriteLine("no rows found");
    foreach (DataRow r in rows)
        foreach (DataColumn c in r.Table.Columns)
            Console.Write("\t {0}", r[c]);

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

    ' 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()})
    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)
    If rows.Length <= 0 Then
        Console.WriteLine("no rows found")
    End If

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


CaseSensitive 문자열 정렬, 검색 및 필터링을 비교 하는 속성에 영향을 줍니다.The CaseSensitive property affects string comparisons in sorting, searching, and filtering.

적용 대상

추가 정보