Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / whidbey / netfxsp / ndp / fx / src / Data / System / Data / Constraint.cs / 1 / Constraint.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //[....] //[....] //[....] //----------------------------------------------------------------------------- namespace System.Data { using System; using System.ComponentModel; using System.Globalization; ////// [ DefaultProperty("ConstraintName"), TypeConverter(typeof(ConstraintConverter)) ] #if WINFSInternalOnly internal #else public #endif abstract class Constraint { internal String name = ""; private String _schemaName = ""; private bool inCollection = false; private DataSet dataSet = null; internal PropertyCollection extendedProperties = null; ///Represents a constraint that can be enforced on one or /// more ///objects. /// [ DefaultValue(""), ResDescriptionAttribute(Res.ConstraintNameDescr), ResCategoryAttribute(Res.DataCategory_Data) ] public virtual string ConstraintName { get { return name; } set { if (value == null) value = ""; if (Common.ADP.IsEmpty(value) && (Table != null) && InCollection) throw ExceptionBuilder.NoConstraintName(); CultureInfo locale = (Table != null ? Table.Locale : CultureInfo.CurrentCulture); if (String.Compare(name, value, true, locale) != 0) { if ((Table != null) && InCollection) { Table.Constraints.RegisterName(value); if (name.Length != 0) Table.Constraints.UnregisterName(name); } name = value; } else if (String.Compare(name, value, false, locale) != 0) { name = value; } } } internal String SchemaName { get { if (Common.ADP.IsEmpty(_schemaName)) return ConstraintName; else return _schemaName; } set { if (!Common.ADP.IsEmpty(value)) _schemaName = value; } } internal virtual bool InCollection { get { // ACCESSOR: virtual was missing from this get return inCollection; } set { inCollection = value; if (value) dataSet = Table.DataSet; else dataSet = null; } } ///The name of this constraint within the ////// . /// [ResDescriptionAttribute(Res.ConstraintTableDescr)] public abstract DataTable Table { get; } ///Gets the ///to which the constraint applies. /// [ ResCategoryAttribute(Res.DataCategory_Data), Browsable(false), ResDescriptionAttribute(Res.ExtendedPropertiesDescr) ] public PropertyCollection ExtendedProperties { get { if (extendedProperties == null) { extendedProperties = new PropertyCollection(); } return extendedProperties; } } internal abstract bool ContainsColumn(DataColumn column); internal abstract bool CanEnableConstraint(); internal abstract Constraint Clone(DataSet destination); internal abstract Constraint Clone(DataSet destination, bool ignoreNSforTableLookup); internal void CheckConstraint() { if (!CanEnableConstraint()) { throw ExceptionBuilder.ConstraintViolation(ConstraintName); } } internal abstract void CheckCanAddToCollection(ConstraintCollection constraint); internal abstract bool CanBeRemovedFromCollection(ConstraintCollection constraint, bool fThrowException); internal abstract void CheckConstraint(DataRow row, DataRowAction action); internal abstract void CheckState(); protected void CheckStateForProperty() { try { CheckState(); } catch (Exception e) { // if (!Common.ADP.IsCatchableExceptionType (e)) { throw; } throw ExceptionBuilder.BadObjectPropertyAccess(e.Message); } } ///Gets the collection of customized user information. ////// #if WINFSInternalOnly #else [CLSCompliant(false)] #endif protected virtual DataSet _DataSet { get { return dataSet; } } ///Gets the ///to which this constraint belongs. /// protected internal void SetDataSet(DataSet dataSet) { this.dataSet = dataSet; } internal abstract bool IsConstraintViolated(); public override string ToString() { return ConstraintName; } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------------------------ //Sets the constraint's ///. // Copyright (c) Microsoft Corporation. All rights reserved. // //[....] //[....] //[....] //----------------------------------------------------------------------------- namespace System.Data { using System; using System.ComponentModel; using System.Globalization; ////// [ DefaultProperty("ConstraintName"), TypeConverter(typeof(ConstraintConverter)) ] #if WINFSInternalOnly internal #else public #endif abstract class Constraint { internal String name = ""; private String _schemaName = ""; private bool inCollection = false; private DataSet dataSet = null; internal PropertyCollection extendedProperties = null; ///Represents a constraint that can be enforced on one or /// more ///objects. /// [ DefaultValue(""), ResDescriptionAttribute(Res.ConstraintNameDescr), ResCategoryAttribute(Res.DataCategory_Data) ] public virtual string ConstraintName { get { return name; } set { if (value == null) value = ""; if (Common.ADP.IsEmpty(value) && (Table != null) && InCollection) throw ExceptionBuilder.NoConstraintName(); CultureInfo locale = (Table != null ? Table.Locale : CultureInfo.CurrentCulture); if (String.Compare(name, value, true, locale) != 0) { if ((Table != null) && InCollection) { Table.Constraints.RegisterName(value); if (name.Length != 0) Table.Constraints.UnregisterName(name); } name = value; } else if (String.Compare(name, value, false, locale) != 0) { name = value; } } } internal String SchemaName { get { if (Common.ADP.IsEmpty(_schemaName)) return ConstraintName; else return _schemaName; } set { if (!Common.ADP.IsEmpty(value)) _schemaName = value; } } internal virtual bool InCollection { get { // ACCESSOR: virtual was missing from this get return inCollection; } set { inCollection = value; if (value) dataSet = Table.DataSet; else dataSet = null; } } ///The name of this constraint within the ////// . /// [ResDescriptionAttribute(Res.ConstraintTableDescr)] public abstract DataTable Table { get; } ///Gets the ///to which the constraint applies. /// [ ResCategoryAttribute(Res.DataCategory_Data), Browsable(false), ResDescriptionAttribute(Res.ExtendedPropertiesDescr) ] public PropertyCollection ExtendedProperties { get { if (extendedProperties == null) { extendedProperties = new PropertyCollection(); } return extendedProperties; } } internal abstract bool ContainsColumn(DataColumn column); internal abstract bool CanEnableConstraint(); internal abstract Constraint Clone(DataSet destination); internal abstract Constraint Clone(DataSet destination, bool ignoreNSforTableLookup); internal void CheckConstraint() { if (!CanEnableConstraint()) { throw ExceptionBuilder.ConstraintViolation(ConstraintName); } } internal abstract void CheckCanAddToCollection(ConstraintCollection constraint); internal abstract bool CanBeRemovedFromCollection(ConstraintCollection constraint, bool fThrowException); internal abstract void CheckConstraint(DataRow row, DataRowAction action); internal abstract void CheckState(); protected void CheckStateForProperty() { try { CheckState(); } catch (Exception e) { // if (!Common.ADP.IsCatchableExceptionType (e)) { throw; } throw ExceptionBuilder.BadObjectPropertyAccess(e.Message); } } ///Gets the collection of customized user information. ////// #if WINFSInternalOnly #else [CLSCompliant(false)] #endif protected virtual DataSet _DataSet { get { return dataSet; } } ///Gets the ///to which this constraint belongs. /// protected internal void SetDataSet(DataSet dataSet) { this.dataSet = dataSet; } internal abstract bool IsConstraintViolated(); public override string ToString() { return ConstraintName; } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.Sets the constraint's ///.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- NavigationPropertyEmitter.cs
- ClockGroup.cs
- GridProviderWrapper.cs
- DataViewManagerListItemTypeDescriptor.cs
- StructuredTypeEmitter.cs
- ComplexType.cs
- OletxVolatileEnlistment.cs
- ConditionalAttribute.cs
- TypeSystem.cs
- VoiceSynthesis.cs
- WebPartPersonalization.cs
- VariableAction.cs
- ArgumentOutOfRangeException.cs
- SourceElementsCollection.cs
- Schema.cs
- SoapMessage.cs
- CodeNamespace.cs
- XamlFrame.cs
- SoundPlayerAction.cs
- PathGradientBrush.cs
- WebPartUserCapability.cs
- WindowVisualStateTracker.cs
- DependencyObject.cs
- CachedFontFace.cs
- GridViewCommandEventArgs.cs
- MissingManifestResourceException.cs
- C14NUtil.cs
- LocalizationComments.cs
- Relationship.cs
- CodeTypeDelegate.cs
- WebBrowserNavigatingEventHandler.cs
- BaseDataBoundControl.cs
- XsdDuration.cs
- ServiceMemoryGates.cs
- SctClaimDictionary.cs
- XMLUtil.cs
- SHA256Cng.cs
- CodeGeneratorAttribute.cs
- WorkflowEnvironment.cs
- Range.cs
- QuadraticBezierSegment.cs
- SqlGatherConsumedAliases.cs
- Compiler.cs
- StringResourceManager.cs
- MediaElement.cs
- MonitorWrapper.cs
- TextContainerChangeEventArgs.cs
- AuthorizationRuleCollection.cs
- HttpValueCollection.cs
- StylusCaptureWithinProperty.cs
- SoapSchemaExporter.cs
- ExeContext.cs
- DefaultProxySection.cs
- BookmarkList.cs
- MarkupProperty.cs
- SQLBytesStorage.cs
- InheritanceAttribute.cs
- HierarchicalDataSourceControl.cs
- AutoSizeToolBoxItem.cs
- SQLCharsStorage.cs
- InvalidFilterCriteriaException.cs
- TypedTableBase.cs
- DelayLoadType.cs
- RSAPKCS1SignatureFormatter.cs
- RoleGroup.cs
- DesignerDeviceConfig.cs
- MediaElementAutomationPeer.cs
- ChangeConflicts.cs
- IntellisenseTextBox.designer.cs
- UnmanagedMemoryStream.cs
- WebPartVerbsEventArgs.cs
- WebPartUtil.cs
- LowerCaseStringConverter.cs
- OciEnlistContext.cs
- GenericArgumentsUpdater.cs
- EditingCoordinator.cs
- DiscoveryRequestHandler.cs
- Vector3DKeyFrameCollection.cs
- InertiaTranslationBehavior.cs
- InternalConfigEventArgs.cs
- WebPartEditorCancelVerb.cs
- WebBrowserDocumentCompletedEventHandler.cs
- XamlSerializer.cs
- Regex.cs
- DataGridCaption.cs
- ValidatingReaderNodeData.cs
- ObjectToIdCache.cs
- BamlLocalizer.cs
- CodeConditionStatement.cs
- AttributeCollection.cs
- linebase.cs
- AssociationSetEnd.cs
- COAUTHIDENTITY.cs
- Rect.cs
- ExtensibleClassFactory.cs
- InstanceContext.cs
- PhotoPrintingIntent.cs
- WizardStepBase.cs
- TextDecoration.cs
- ConfigurationProperty.cs