Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / Xml / System / Xml / schema / CompiledIdentityConstraint.cs / 1305376 / CompiledIdentityConstraint.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //[....] //----------------------------------------------------------------------------- namespace System.Xml.Schema { using System.Text; using System.Collections; using System.Diagnostics; using System.Xml.XPath; using MS.Internal.Xml.XPath; internal class CompiledIdentityConstraint { internal XmlQualifiedName name = XmlQualifiedName.Empty; private ConstraintRole role; private Asttree selector; private Asttree[] fields; internal XmlQualifiedName refer = XmlQualifiedName.Empty; public enum ConstraintRole { Unique, Key, Keyref } public ConstraintRole Role { get { return this.role; } } public Asttree Selector { get { return this.selector; } } public Asttree[] Fields { get { return this.fields; } } public static readonly CompiledIdentityConstraint Empty = new CompiledIdentityConstraint(); private CompiledIdentityConstraint() {} public CompiledIdentityConstraint(XmlSchemaIdentityConstraint constraint, XmlNamespaceManager nsmgr) { this.name = constraint.QualifiedName; //public Asttree (string xPath, bool isField, XmlNamespaceManager nsmgr) try { this.selector = new Asttree(constraint.Selector.XPath, false, nsmgr); } catch (XmlSchemaException e) { e.SetSource(constraint.Selector); throw e; } XmlSchemaObjectCollection fields = constraint.Fields; Debug.Assert(fields.Count > 0); this.fields = new Asttree[fields.Count]; for(int idxField = 0; idxField < fields.Count; idxField ++) { try { this.fields[idxField] = new Asttree(((XmlSchemaXPath)fields[idxField]).XPath, true, nsmgr); } catch (XmlSchemaException e) { e.SetSource(constraint.Fields[idxField]); throw e; } } if (constraint is XmlSchemaUnique) { this.role = ConstraintRole.Unique; } else if (constraint is XmlSchemaKey) { this.role = ConstraintRole.Key; } else { // XmlSchemaKeyref this.role = ConstraintRole.Keyref; this.refer = ((XmlSchemaKeyref)constraint).Refer; } } } } // 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
- DelegateSerializationHolder.cs
- XmlSchemaExporter.cs
- SecurityState.cs
- ActivityFunc.cs
- InvalidOperationException.cs
- UrlMapping.cs
- DependencyPropertyDescriptor.cs
- WebPartZoneBase.cs
- ByteAnimation.cs
- InputScopeNameConverter.cs
- DelayedRegex.cs
- TreeViewItemAutomationPeer.cs
- InitializationEventAttribute.cs
- AuthenticationServiceManager.cs
- SymDocumentType.cs
- BrowserCapabilitiesFactoryBase.cs
- SystemException.cs
- StorageComplexPropertyMapping.cs
- FilterElement.cs
- SubordinateTransaction.cs
- SliderAutomationPeer.cs
- RecordConverter.cs
- ConnectionInterfaceCollection.cs
- NetworkInterface.cs
- Common.cs
- Style.cs
- SystemWebCachingSectionGroup.cs
- ClientTargetCollection.cs
- Int32CollectionConverter.cs
- ModelProperty.cs
- MessageQueueException.cs
- ConditionalWeakTable.cs
- TimeoutValidationAttribute.cs
- ControlDesigner.cs
- RecordsAffectedEventArgs.cs
- ScriptRegistrationManager.cs
- ServerProtocol.cs
- RelationshipConverter.cs
- CodeCompiler.cs
- ToggleButtonAutomationPeer.cs
- TextEditorTables.cs
- LookupBindingPropertiesAttribute.cs
- PropertyTab.cs
- SessionChannels.cs
- DependencyObjectPropertyDescriptor.cs
- Certificate.cs
- TypeGeneratedEventArgs.cs
- ToolBarOverflowPanel.cs
- PointValueSerializer.cs
- RowUpdatingEventArgs.cs
- ExpressionCopier.cs
- DataObject.cs
- SystemIPInterfaceProperties.cs
- TextAdaptor.cs
- CodeExporter.cs
- XmlSchemaType.cs
- ConfigurationHelpers.cs
- ConfigXmlAttribute.cs
- DeviceContext2.cs
- DataTableReader.cs
- WindowShowOrOpenTracker.cs
- LassoHelper.cs
- DataServiceEntityAttribute.cs
- ListControl.cs
- TimelineCollection.cs
- NavigationFailedEventArgs.cs
- ToolStripContentPanel.cs
- ProfileEventArgs.cs
- FlowLayoutPanel.cs
- JsonByteArrayDataContract.cs
- ExpressionVisitor.cs
- BuildProviderCollection.cs
- HtmlValidationSummaryAdapter.cs
- StringToken.cs
- ResourcesChangeInfo.cs
- IdentifierCreationService.cs
- OneOfScalarConst.cs
- WebPartEditorOkVerb.cs
- SQLBoolean.cs
- MissingMemberException.cs
- TransformCryptoHandle.cs
- SerializationObjectManager.cs
- SqlOuterApplyReducer.cs
- StringStorage.cs
- KeyTimeConverter.cs
- SpecialFolderEnumConverter.cs
- PieceDirectory.cs
- HandlerMappingMemo.cs
- LineGeometry.cs
- XmlNamespaceManager.cs
- WebPartTracker.cs
- NonParentingControl.cs
- ReaderWriterLock.cs
- SByte.cs
- MembershipSection.cs
- XmlAttributeOverrides.cs
- FormViewCommandEventArgs.cs
- DbProviderManifest.cs
- LogRestartAreaEnumerator.cs
- InternalBufferOverflowException.cs