Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / Orcas / SP / ndp / fx / src / DataEntity / System / Data / Map / ViewGeneration / Validation / SchemaConstraints.cs / 2 / SchemaConstraints.cs
//----------------------------------------------------------------------
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
//
// @owner [....]
// @backupOwner [....]
//---------------------------------------------------------------------
using System.Data.Common.Utils;
using System.Collections.Generic;
using System.Text;
namespace System.Data.Mapping.ViewGeneration.Validation {
///
/// A class representing a set of constraints. It uses generic parameters
/// so that we can get strong typing and avoid downcasts
///
internal class SchemaConstraints : InternalBase
where TKeyConstraint : InternalBase {
#region Constructor
// effects: Creates an empty set of constraints
internal SchemaConstraints() {
m_keyConstraints = new List();
}
#endregion
#region Fields
// Use different lists so we can enumerate the right kind of constraints
private List m_keyConstraints;
#endregion
#region Properties
internal IEnumerable KeyConstraints {
get { return m_keyConstraints; }
}
#endregion
#region Methods
// effects: Adds a key constraint to this
internal void Add(TKeyConstraint constraint) {
EntityUtil.CheckArgumentNull(constraint, "constraint");
m_keyConstraints.Add(constraint);
}
// effects: Converts constraints to human-readable strings and adds them to builder
private static void ConstraintsToBuilder(IEnumerable constraints, StringBuilder builder)
where Constraint : InternalBase {
foreach (Constraint constraint in constraints) {
constraint.ToCompactString(builder);
builder.Append(Environment.NewLine);
}
}
internal override void ToCompactString(StringBuilder builder) {
ConstraintsToBuilder(m_keyConstraints, builder);
}
#endregion
}
}
// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
//----------------------------------------------------------------------
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
//
// @owner [....]
// @backupOwner [....]
//---------------------------------------------------------------------
using System.Data.Common.Utils;
using System.Collections.Generic;
using System.Text;
namespace System.Data.Mapping.ViewGeneration.Validation {
///
/// A class representing a set of constraints. It uses generic parameters
/// so that we can get strong typing and avoid downcasts
///
internal class SchemaConstraints : InternalBase
where TKeyConstraint : InternalBase {
#region Constructor
// effects: Creates an empty set of constraints
internal SchemaConstraints() {
m_keyConstraints = new List();
}
#endregion
#region Fields
// Use different lists so we can enumerate the right kind of constraints
private List m_keyConstraints;
#endregion
#region Properties
internal IEnumerable KeyConstraints {
get { return m_keyConstraints; }
}
#endregion
#region Methods
// effects: Adds a key constraint to this
internal void Add(TKeyConstraint constraint) {
EntityUtil.CheckArgumentNull(constraint, "constraint");
m_keyConstraints.Add(constraint);
}
// effects: Converts constraints to human-readable strings and adds them to builder
private static void ConstraintsToBuilder(IEnumerable constraints, StringBuilder builder)
where Constraint : InternalBase {
foreach (Constraint constraint in constraints) {
constraint.ToCompactString(builder);
builder.Append(Environment.NewLine);
}
}
internal override void ToCompactString(StringBuilder builder) {
ConstraintsToBuilder(m_keyConstraints, builder);
}
#endregion
}
}
// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- ComponentManagerBroker.cs
- RMPublishingDialog.cs
- WindowVisualStateTracker.cs
- ActivationServices.cs
- CodeParameterDeclarationExpression.cs
- CaseInsensitiveHashCodeProvider.cs
- DataGridViewTextBoxEditingControl.cs
- SoapObjectReader.cs
- DeferrableContent.cs
- ObjectFactoryCodeDomTreeGenerator.cs
- Rect.cs
- AsymmetricSecurityProtocol.cs
- ContentDisposition.cs
- ConfigurationPropertyCollection.cs
- ScriptingScriptResourceHandlerSection.cs
- SystemFonts.cs
- EdmProviderManifest.cs
- FileDialog_Vista_Interop.cs
- ConnectionStringsSection.cs
- TabItemAutomationPeer.cs
- UInt32.cs
- UnicodeEncoding.cs
- ByteStreamGeometryContext.cs
- FormViewModeEventArgs.cs
- ContractsBCL.cs
- _FixedSizeReader.cs
- WebPartAddingEventArgs.cs
- GroupBox.cs
- ItemList.cs
- ReferencedCollectionType.cs
- ObjectQueryExecutionPlan.cs
- XsltSettings.cs
- EntityStoreSchemaGenerator.cs
- MatrixValueSerializer.cs
- CodeNamespaceImportCollection.cs
- ParseNumbers.cs
- HtmlInputControl.cs
- StringValueSerializer.cs
- ConfigurationStrings.cs
- MessageAction.cs
- AppLevelCompilationSectionCache.cs
- SqlParameterCollection.cs
- WebPartManager.cs
- PeerCollaboration.cs
- CreateParams.cs
- CqlGenerator.cs
- ThrowHelper.cs
- Hash.cs
- Win32KeyboardDevice.cs
- CredentialCache.cs
- DockProviderWrapper.cs
- TextRunProperties.cs
- TranslateTransform3D.cs
- GradientStop.cs
- Compiler.cs
- SessionIDManager.cs
- X509ServiceCertificateAuthentication.cs
- SqlConnectionFactory.cs
- ConsumerConnectionPointCollection.cs
- MediaContextNotificationWindow.cs
- KeyValueInternalCollection.cs
- SendActivityEventArgs.cs
- VirtualizedCellInfoCollection.cs
- HttpCookieCollection.cs
- SocketElement.cs
- ObjectDataSourceView.cs
- FileLoadException.cs
- GenerateScriptTypeAttribute.cs
- updatecommandorderer.cs
- Update.cs
- DataTableNewRowEvent.cs
- EntitySqlQueryCacheKey.cs
- GridViewRow.cs
- SuppressIldasmAttribute.cs
- Utilities.cs
- ValidationEventArgs.cs
- PublisherMembershipCondition.cs
- DoubleIndependentAnimationStorage.cs
- ListBase.cs
- FormatConvertedBitmap.cs
- ShutDownListener.cs
- XmlWrappingReader.cs
- CommunicationException.cs
- TextSelectionHelper.cs
- ObjectCacheSettings.cs
- NumericUpDownAccelerationCollection.cs
- Int64KeyFrameCollection.cs
- NeedSkipTokenVisitor.cs
- Annotation.cs
- OperationInfo.cs
- GeneralTransformGroup.cs
- FamilyMap.cs
- TreeNodeStyleCollection.cs
- JapaneseCalendar.cs
- HMACRIPEMD160.cs
- DynamicILGenerator.cs
- DeferredElementTreeState.cs
- ContentElement.cs
- DbProviderFactories.cs
- XPathDocumentBuilder.cs