DataSet.EnforceConstraints 属性
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
获取或设置一个值,该值指示在尝试执行任何更新操作时是否遵循约束规则。
public:
property bool EnforceConstraints { bool get(); void set(bool value); };
public bool EnforceConstraints { get; set; }
[System.Data.DataSysDescription("DataSetEnforceConstraintsDescr")]
public bool EnforceConstraints { get; set; }
member this.EnforceConstraints : bool with get, set
[<System.Data.DataSysDescription("DataSetEnforceConstraintsDescr")>]
member this.EnforceConstraints : bool with get, set
Public Property EnforceConstraints As Boolean
属性值
true
如果强制实施规则,否则为 false
。 默认值为 true
。
- 属性
例外
无法实施一个或多个约束。
示例
以下示例创建包含一个 DataSet 表、一列、五行和一个 UniqueConstraint的 。 属性 EnforceConstraints 设置为 false
,每行的值设置为相同的值。 当 属性 EnforceConstraints 重置为 true
时, ConstraintException 将生成 。
private void DemonstrateEnforceConstraints()
{
// Create a DataSet with one table, one column and
// a UniqueConstraint.
DataSet dataSet= new DataSet("dataSet");
DataTable table = new DataTable("table");
DataColumn column = new DataColumn("col1");
// A UniqueConstraint is added when the Unique
// property is true.
column.Unique=true;
table.Columns.Add(column);
dataSet.Tables.Add(table);
Console.WriteLine("constraints.count: " +
table.Constraints.Count);
// add five rows.
DataRow row ;
for(int i=0;i<5;i++)
{
row = table.NewRow();
row["col1"] = i;
table.Rows.Add(row);
}
table.AcceptChanges();
dataSet.EnforceConstraints=false;
// Change the values of all rows to 1.
foreach(DataRow thisRow in table.Rows)
{
thisRow["col1"]=1;
//Console.WriteLine("\table" + thisRow[0]);
}
try
{
dataSet.EnforceConstraints=true;
}
catch(System.Data.ConstraintException e)
{
// Process exception and return.
Console.WriteLine("Exception of type {0} occurred.",
e.GetType());
}
}
Private Sub DemonstrateEnforceConstraints()
' Create a DataSet with one table, one column and
' a UniqueConstraint.
Dim dataSet As New DataSet("dataSet")
Dim table As New DataTable("table")
Dim column As New DataColumn("col1")
column.Unique = True
table.Columns.Add(column)
dataSet.Tables.Add(table)
Console.WriteLine("constraints.count: " _
& table.Constraints.Count)
' add five rows.
Dim row As DataRow
Dim i As Integer
For i = 0 To 4
row = table.NewRow()
row("col1") = i
table.Rows.Add(row)
Next
table.AcceptChanges()
dataSet.EnforceConstraints = False
' Change the values of all rows to 1.
Dim thisRow As DataRow
For Each thisRow In table.rows
thisRow("col1") = 1
Next
Try
dataSet.EnforceConstraints = True
Catch e As System.Data.ConstraintException
' Process exception and return.
Console.WriteLine("Exception of type {0} occurred.", _
e.GetType().ToString())
End Try
End Sub
注解
约束在 DataTable 属性) (Constraints 级别设置。 有关创建约束的详细信息,请参阅 DataTable 约束。