Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / Orcas / NetFXw7 / ndp / fx / src / DataEntity / System / Data / Map / ViewGeneration / Validation / KeyConstraint.cs / 1 / KeyConstraint.cs
//---------------------------------------------------------------------- //// Copyright (c) Microsoft Corporation. All rights reserved. // // // @owner [....] // @backupOwner [....] //--------------------------------------------------------------------- using System.Data.Common.Utils; using System.Collections.Generic; using System.Text; using System.Diagnostics; namespace System.Data.Mapping.ViewGeneration.Validation { // Class representing a key constraint for particular cellrelation internal class KeyConstraint: InternalBase where TCellRelation : CellRelation { #region Constructor // Constructs a key constraint for the given relation and keyslots // with comparer being the comparison operator for comparing various // keyslots in Implies, etc internal KeyConstraint(TCellRelation relation, IEnumerable keySlots, IEqualityComparer comparer) { m_relation = relation; m_keySlots = new Set (keySlots, comparer).MakeReadOnly(); Debug.Assert(m_keySlots.Count > 0, "Key constraint being created without any keyslots?"); } #endregion #region Fields private TCellRelation m_relation; private Set m_keySlots; #endregion #region Properties protected TCellRelation CellRelation { get { return m_relation; } } protected Set KeySlots { get { return m_keySlots;} } #endregion #region Methods internal override void ToCompactString(StringBuilder builder) { StringUtil.FormatStringBuilder(builder, "Key (V{0}) - ", m_relation.CellNumber); StringUtil.ToSeparatedStringSorted(builder, KeySlots, ", "); // The slots contain the name of the relation: So we skip // printing the CellRelation } #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; using System.Diagnostics; namespace System.Data.Mapping.ViewGeneration.Validation { // Class representing a key constraint for particular cellrelation internal class KeyConstraint: InternalBase where TCellRelation : CellRelation { #region Constructor // Constructs a key constraint for the given relation and keyslots // with comparer being the comparison operator for comparing various // keyslots in Implies, etc internal KeyConstraint(TCellRelation relation, IEnumerable keySlots, IEqualityComparer comparer) { m_relation = relation; m_keySlots = new Set (keySlots, comparer).MakeReadOnly(); Debug.Assert(m_keySlots.Count > 0, "Key constraint being created without any keyslots?"); } #endregion #region Fields private TCellRelation m_relation; private Set m_keySlots; #endregion #region Properties protected TCellRelation CellRelation { get { return m_relation; } } protected Set KeySlots { get { return m_keySlots;} } #endregion #region Methods internal override void ToCompactString(StringBuilder builder) { StringUtil.FormatStringBuilder(builder, "Key (V{0}) - ", m_relation.CellNumber); StringUtil.ToSeparatedStringSorted(builder, KeySlots, ", "); // The slots contain the name of the relation: So we skip // printing the CellRelation } #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
- ValidatingReaderNodeData.cs
- DataSourceSelectArguments.cs
- ManipulationInertiaStartingEventArgs.cs
- PersonalizableAttribute.cs
- HGlobalSafeHandle.cs
- ScrollEvent.cs
- ClientBuildManagerCallback.cs
- DataSourceCache.cs
- ComponentDispatcher.cs
- TrackingStringDictionary.cs
- TextTreeObjectNode.cs
- XmlName.cs
- AssemblyCache.cs
- NestPullup.cs
- DependencyPropertyConverter.cs
- SHA384CryptoServiceProvider.cs
- TextElement.cs
- CfgSemanticTag.cs
- WebPartEditorOkVerb.cs
- counter.cs
- Button.cs
- DesignerTransactionCloseEvent.cs
- ParseHttpDate.cs
- FrameworkElementFactoryMarkupObject.cs
- AbandonedMutexException.cs
- CodeIdentifiers.cs
- RunInstallerAttribute.cs
- HWStack.cs
- URLBuilder.cs
- DesignTimeResourceProviderFactoryAttribute.cs
- MouseDevice.cs
- FixedTextPointer.cs
- CoreSwitches.cs
- ToolStripTextBox.cs
- ExpandedWrapper.cs
- ObjectSecurity.cs
- CharacterMetricsDictionary.cs
- ProtocolsConfigurationHandler.cs
- CollectionBase.cs
- EventLog.cs
- FunctionQuery.cs
- XPathSelfQuery.cs
- SizeValueSerializer.cs
- HttpListenerResponse.cs
- GeometryHitTestParameters.cs
- InsufficientMemoryException.cs
- TextUtf8RawTextWriter.cs
- FileLoadException.cs
- DataServiceQueryProvider.cs
- StreamUpgradeBindingElement.cs
- NumericExpr.cs
- XPathDocumentNavigator.cs
- RangeValidator.cs
- CryptographicAttribute.cs
- SelectorAutomationPeer.cs
- CodeArrayIndexerExpression.cs
- TdsParserSessionPool.cs
- ContainerControl.cs
- CultureInfoConverter.cs
- CodeCatchClauseCollection.cs
- GraphicsContext.cs
- LogPolicy.cs
- CommonDialog.cs
- Repeater.cs
- Single.cs
- ScriptResourceInfo.cs
- AvTraceFormat.cs
- EntityConnectionStringBuilderItem.cs
- ControlEvent.cs
- StopStoryboard.cs
- RenderContext.cs
- printdlgexmarshaler.cs
- QuaternionValueSerializer.cs
- OrderedDictionary.cs
- DiffuseMaterial.cs
- DataQuery.cs
- NameHandler.cs
- OrthographicCamera.cs
- ListViewUpdatedEventArgs.cs
- TextDecoration.cs
- ToolBar.cs
- DrawingAttributes.cs
- EntityContainerAssociationSet.cs
- PrintPreviewGraphics.cs
- MSG.cs
- TextContainer.cs
- ListViewGroupConverter.cs
- CaseStatementProjectedSlot.cs
- MemberRelationshipService.cs
- _FtpControlStream.cs
- QilList.cs
- XhtmlStyleClass.cs
- ZipIOFileItemStream.cs
- PropertyDescriptorCollection.cs
- FontClient.cs
- Guid.cs
- Italic.cs
- OutputCacheEntry.cs
- ServicesSection.cs
- ExceptionAggregator.cs