Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / Orcas / SP / 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
- MouseGesture.cs
- SecurityPolicySection.cs
- Int64AnimationUsingKeyFrames.cs
- XmlSchemaAnyAttribute.cs
- DesignerActionUIStateChangeEventArgs.cs
- MultipartContentParser.cs
- SmtpMail.cs
- TextEditor.cs
- ResourceDescriptionAttribute.cs
- XmlCharCheckingWriter.cs
- UnsafeNativeMethods.cs
- ToolStripPanelSelectionGlyph.cs
- DrawingContextDrawingContextWalker.cs
- WebEventCodes.cs
- ViewValidator.cs
- DelimitedListTraceListener.cs
- DictionaryContent.cs
- WpfKnownType.cs
- PlatformCulture.cs
- PrintControllerWithStatusDialog.cs
- ParamArrayAttribute.cs
- SchemaNotation.cs
- TagPrefixAttribute.cs
- SimpleRecyclingCache.cs
- Listbox.cs
- CachedRequestParams.cs
- GeometryDrawing.cs
- Point4D.cs
- IPipelineRuntime.cs
- GatewayDefinition.cs
- RoutedEvent.cs
- WebPartConnectionsCloseVerb.cs
- WebSysDefaultValueAttribute.cs
- ItemCheckEvent.cs
- DataObjectAttribute.cs
- QilName.cs
- UrlAuthFailedErrorFormatter.cs
- Slider.cs
- WebPartsPersonalization.cs
- CursorConverter.cs
- SamlNameIdentifierClaimResource.cs
- SymDocumentType.cs
- SHA1Cng.cs
- EmptyEnumerator.cs
- WpfWebRequestHelper.cs
- ListViewInsertEventArgs.cs
- EntityDataSourceSelectingEventArgs.cs
- DataGridColumnHeaderAutomationPeer.cs
- LinqMaximalSubtreeNominator.cs
- BitmapInitialize.cs
- WebServiceData.cs
- Transform.cs
- XmlSchemaImport.cs
- TypeValidationEventArgs.cs
- SqlDependency.cs
- AutoScrollHelper.cs
- Main.cs
- EntityCommandDefinition.cs
- GroupByQueryOperator.cs
- DataTableClearEvent.cs
- System.Data_BID.cs
- ScopeElement.cs
- RootBrowserWindowProxy.cs
- util.cs
- IsolatedStoragePermission.cs
- Int64AnimationUsingKeyFrames.cs
- LingerOption.cs
- BooleanFunctions.cs
- CuspData.cs
- datacache.cs
- RelationshipConverter.cs
- NetMsmqSecurity.cs
- XmlHierarchicalDataSourceView.cs
- AutoGeneratedFieldProperties.cs
- DataGridViewButtonCell.cs
- MetadataHelper.cs
- ThemeConfigurationDialog.cs
- BufferBuilder.cs
- Compilation.cs
- StatusBarItemAutomationPeer.cs
- SRGSCompiler.cs
- AttachmentCollection.cs
- SingleAnimationUsingKeyFrames.cs
- _emptywebproxy.cs
- DefaultTextStore.cs
- Vector3DKeyFrameCollection.cs
- ScriptReference.cs
- XPathExpr.cs
- PickBranchDesigner.xaml.cs
- Visual3D.cs
- UpdateExpressionVisitor.cs
- HitTestWithGeometryDrawingContextWalker.cs
- ApplyHostConfigurationBehavior.cs
- BitmapEffectDrawing.cs
- RSAPKCS1KeyExchangeFormatter.cs
- SocketElement.cs
- DynamicQueryableWrapper.cs
- CodeCommentStatement.cs
- CollectionViewGroupRoot.cs
- Part.cs