ConstraintCollection Sınıf
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
bir için DataTablebir kısıtlama koleksiyonunu temsil eder.
public ref class ConstraintCollection sealed : System::Data::InternalDataCollectionBase
public ref class ConstraintCollection : System::Data::InternalDataCollectionBase
public sealed class ConstraintCollection : System.Data.InternalDataCollectionBase
[System.Serializable]
public class ConstraintCollection : System.Data.InternalDataCollectionBase
type ConstraintCollection = class
inherit InternalDataCollectionBase
[<System.Serializable>]
type ConstraintCollection = class
inherit InternalDataCollectionBase
Public NotInheritable Class ConstraintCollection
Inherits InternalDataCollectionBase
Public Class ConstraintCollection
Inherits InternalDataCollectionBase
- Devralma
- Öznitelikler
Örnekler
İlk örnek bir DataTableoluşturur ve öğesine ( DataColumnUnique özelliği olarak true
ayarlanmış şekilde) DataColumnCollectionekler. İkinci örnek, bir DataSet, iki DataTable nesnesi, dört sütun ve bir DataRelationoluşturur. Kısıtlama sayısı daha sonra, nesnesinin öğesine eklendiğinde DataRelation a ForeignKeyConstraint ve UniqueConstraint 'nin DataRelationCollectionoluşturulduğunu DataSet göstermek için yazdırılır.
private void MakeTableWithUniqueConstraint()
{
DataTable table = new DataTable("table");
DataColumn column = new DataColumn("UniqueColumn");
column.Unique=true;
table.Columns.Add(column);
// Print count, name, and type.
Console.WriteLine("Constraints.Count "
+ table.Constraints.Count);
Console.WriteLine(table.Constraints[0].ConstraintName);
Console.WriteLine(table.Constraints[0].GetType() );
// Add a second unique column.
column = new DataColumn("UniqueColumn2");
column.Unique=true;
table.Columns.Add(column);
// Print info again.
Console.WriteLine("Constraints.Count "
+ table.Constraints.Count);
Console.WriteLine(table.Constraints[1].ConstraintName);
Console.WriteLine(table.Constraints[1].GetType() );
}
private void MakeTableWithForeignConstraint()
{
// Create a DataSet.
DataSet dataSet = new DataSet("dataSet");
// Make two tables.
DataTable customersTable= new DataTable("Customers");
DataTable ordersTable = new DataTable("Orders");
// Create four columns, two for each table.
DataColumn name = new DataColumn("Name");
DataColumn id = new DataColumn("ID");
DataColumn orderId = new DataColumn("OrderID");
DataColumn cDate = new DataColumn("OrderDate");
// Add columns to tables.
customersTable.Columns.Add(name);
customersTable.Columns.Add(id);
ordersTable.Columns.Add(orderId);
ordersTable.Columns.Add(cDate);
// Add tables to the DataSet.
dataSet.Tables.Add(customersTable);
dataSet.Tables.Add(ordersTable);
// Create a DataRelation for two of the columns.
DataRelation myRelation = new
DataRelation("CustomersOrders",id,orderId,true);
dataSet.Relations.Add(myRelation);
// Print TableName, Constraints.Count,
// ConstraintName and Type.
foreach(DataTable t in dataSet.Tables)
{
Console.WriteLine(t.TableName);
Console.WriteLine("Constraints.Count "
+ t.Constraints.Count);
Console.WriteLine("ParentRelations.Count "
+ t.ParentRelations.Count);
Console.WriteLine("ChildRelations.Count "
+ t.ChildRelations.Count);
foreach(Constraint cstrnt in t.Constraints)
{
Console.WriteLine(cstrnt.ConstraintName);
Console.WriteLine(cstrnt.GetType());
}
}
}
Private Sub MakeTableWithUniqueConstraint()
Dim table As New DataTable("table")
Dim column As New DataColumn("UniqueColumn")
column.Unique = True
table.Columns.Add(column)
' Print count, name, and type.
Console.WriteLine("Constraints.Count " _
+ table.Constraints.Count.ToString())
Console.WriteLine(table.Constraints(0).ConstraintName)
Console.WriteLine( _
table.Constraints(0).GetType().ToString())
' Add a second unique column.
column = New DataColumn("UniqueColumn2")
column.Unique = True
table.Columns.Add(column)
' Print info again.
Console.WriteLine("Constraints.Count " _
+ table.Constraints.Count.ToString())
Console.WriteLine(table.Constraints(1).ConstraintName)
Console.WriteLine( _
table.Constraints(1).GetType().ToString())
End Sub
Private Sub MakeTableWithForeignConstraint()
' Create a DataSet.
Dim dataSet As New DataSet("dataSet")
' Make two tables.
Dim customersTable As New DataTable("Customers")
Dim ordersTable As New DataTable("Orders")
' Create four columns, two for each table.
Dim name As New DataColumn("Name")
Dim id As New DataColumn("ID")
Dim orderId As New DataColumn("OrderID")
Dim orderDate As New DataColumn("OrderDate")
' Add columns to tables.
customersTable.Columns.Add(name)
customersTable.Columns.Add(id)
ordersTable.Columns.Add(orderId)
ordersTable.Columns.Add(orderDate)
' Add tables to the DataSet.
dataSet.Tables.Add(customersTable)
dataSet.Tables.Add(ordersTable)
' Create a DataRelation for two of the columns.
Dim myRelation As New DataRelation _
("CustomersOrders", id, orderId, True)
dataSet.Relations.Add(myRelation)
' Print TableName, Constraints.Count,
' ConstraintName and Type.
Dim t As DataTable
For Each t In dataSet.Tables
Console.WriteLine(t.TableName)
Console.WriteLine("Constraints.Count " _
+ t.Constraints.Count.ToString())
Console.WriteLine("ParentRelations.Count " _
+ t.ParentRelations.Count.ToString())
Console.WriteLine("ChildRelations.Count " _
+ t.ChildRelations.Count.ToString())
Dim cstrnt As Constraint
For Each cstrnt In t.Constraints
Console.WriteLine(cstrnt.ConstraintName)
Console.WriteLine(cstrnt.GetType())
Next cstrnt
Next t
End Sub
Açıklamalar
ConstraintCollection özelliği aracılığıyla DataTable.Constraints erişilir.
, ConstraintCollection için DataTablehem ForeignKeyConstraint hem de UniqueConstraint nesnelerini içerebilir. Nesne UniqueConstraint , veri bütünlüğünü korumak için belirli bir sütundaki verilerin her zaman benzersiz olmasını sağlar. içindeki ForeignKeyConstraint veriler güncelleştirildiğinde veya silindiğinde ilgili tablolarda DataTable ne olacağını belirler. Örneğin, bir satır silinirse, ForeignKeyConstraint ilgili satırların da silinip silinmeyeceğini (art arda) veya başka bir eylem seyrini belirler.
Not
ile iki tablo arasında ilişki oluşturan bir DataSeteklediğinizdeDataRelation, hem a ForeignKeyConstraint hem de a UniqueConstraint otomatik olarak oluşturulur. UniqueConstraint, üst DataTableöğesindeki birincil anahtar sütununa uygulanır ve kısıtlama bu tablonun ConstraintCollectionöğesine eklenir. ForeignKeyConstraint birincil anahtar sütununa ve yabancı anahtar sütununa uygulanır ve kısıtlama alt tablonun ConstraintCollectionöğesine eklenir.
, ConstraintCollectionClearve Removegibi Addstandart koleksiyon yöntemlerini kullanır. Buna ek olarak, Contains yöntemi koleksiyonda belirli bir kısıtlamanın varlığını aramak için kullanılabilir.
özelliği UniqueConstraint olarak ayarlanmış true
bir DataColumnUnique nesnesine eklendiğinde bir DataTableDataColumnCollectionoluşturulur.
bir ForeignKeyConstraint nesnesine DataSetDataRelationCollectioneklendiğinde DataRelation oluşturulur.
Özellikler
Count |
Koleksiyondaki öğelerin toplam sayısını alır. (Devralındığı yer: InternalDataCollectionBase) |
IsReadOnly |
öğesinin salt okunur olup olmadığını InternalDataCollectionBase gösteren bir değer alır. (Devralındığı yer: InternalDataCollectionBase) |
IsSynchronized |
öğesinin eşitlenip eşitlenmediğini InternalDataCollectionBase belirten bir değer alır. (Devralındığı yer: InternalDataCollectionBase) |
Item[Int32] |
Constraint Belirtilen dizindeki koleksiyondan öğesini alır. |
Item[String] |
Constraint Belirtilen ada sahip koleksiyondan öğesini alır. |
List |
Koleksiyonun öğelerini liste olarak alır. |
List |
Koleksiyonun öğelerini liste olarak alır. (Devralındığı yer: InternalDataCollectionBase) |
SyncRoot |
Koleksiyonu eşitlemek için kullanılabilecek bir nesnesi alır. (Devralındığı yer: InternalDataCollectionBase) |
Yöntemler
Add(Constraint) |
Belirtilen Constraint nesneyi koleksiyona ekler. |
Add(String, DataColumn, Boolean) |
Sütunun birincil anahtar olup olmadığını gösteren belirtilen ad, DataColumnve değeriyle yeni UniqueConstraint bir oluşturur ve bunu koleksiyona ekler. |
Add(String, DataColumn, DataColumn) |
Belirtilen ad, üst sütun ve alt sütun ile yeni ForeignKeyConstraint bir oluşturur ve kısıtlamayı koleksiyona ekler. |
Add(String, DataColumn[], Boolean) |
Belirtilen ad, nesne dizisi ve sütunun DataColumn birincil anahtar olup olmadığını gösteren değerle yeni UniqueConstraint bir oluşturur ve bunu koleksiyona ekler. |
Add(String, DataColumn[], DataColumn[]) |
Belirtilen üst sütun ve alt sütun dizileriyle yeni ForeignKeyConstraintbir oluşturur ve kısıtlamayı koleksiyona ekler. |
AddRange(Constraint[]) |
Belirtilen ConstraintCollection dizinin öğelerini koleksiyonun sonuna kopyalar. |
CanRemove(Constraint) |
öğesinin Constraint kaldırılıp kaldırılamayacağını gösterir. |
Clear() |
Tüm Constraint nesnelerin koleksiyonunu temizler. |
Contains(String) |
Adla belirtilen nesnenin Constraint koleksiyonda mevcut olup olmadığını gösterir. |
CopyTo(Array, Int32) |
Geçerli InternalDataCollectionBase öğenin tüm öğelerini belirtilen InternalDataCollectionBase dizinden başlayarak tek boyutlu Arraybir öğesine kopyalar. (Devralındığı yer: InternalDataCollectionBase) |
CopyTo(Constraint[], Int32) |
Koleksiyon nesnelerini belirtilen dizinden başlayarak tek boyutlu Array bir örneğe kopyalar. |
Equals(Object) |
Belirtilen nesnenin geçerli nesneye eşit olup olmadığını belirler. (Devralındığı yer: Object) |
GetEnumerator() |
Koleksiyon için bir IEnumerator alır. (Devralındığı yer: InternalDataCollectionBase) |
GetHashCode() |
Varsayılan karma işlevi işlevi görür. (Devralındığı yer: Object) |
GetType() |
Type Geçerli örneğini alır. (Devralındığı yer: Object) |
IndexOf(Constraint) |
Belirtilen Constraintöğesinin dizinini alır. |
IndexOf(String) |
Ada göre belirtilen dizinini Constraint alır. |
MemberwiseClone() |
Geçerli Objectöğesinin sığ bir kopyasını oluşturur. (Devralındığı yer: Object) |
OnCollectionChanged(CollectionChangeEventArgs) |
Olayı tetikler CollectionChanged . |
Remove(Constraint) |
Belirtilen Constraint öğesini koleksiyondan kaldırır. |
Remove(String) |
Constraint Koleksiyondan adla belirtilen nesneyi kaldırır. |
RemoveAt(Int32) |
Constraint Belirtilen dizindeki nesneyi koleksiyondan kaldırır. |
ToString() |
Geçerli nesneyi temsil eden dizeyi döndürür. (Devralındığı yer: Object) |
Ekinlikler
CollectionChanged |
ConstraintCollection eklenen veya kaldırılan nesneler nedeniyle Constraint her değiştirildiğinde gerçekleşir. |
Uzantı Metotları
Cast<TResult>(IEnumerable) |
öğesinin IEnumerable öğelerini belirtilen türe atar. |
OfType<TResult>(IEnumerable) |
Öğesinin IEnumerable öğelerini belirtilen türe göre filtreler. |
AsParallel(IEnumerable) |
Sorgunun paralelleştirilmesini etkinleştirir. |
AsQueryable(IEnumerable) |
bir IEnumerable öğesini öğesine IQueryabledönüştürür. |
Şunlara uygulanır
İş Parçacığı Güvenliği
Bu tür, çok iş parçacıklı okuma işlemleri için güvenlidir. Mevcut yazma işlemlerini eşitlemeniz gerekir.