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
- DispatcherFrame.cs
- SpecialNameAttribute.cs
- PackageRelationshipSelector.cs
- DescendantBaseQuery.cs
- RoutedEventArgs.cs
- PresentationTraceSources.cs
- TypedDatasetGenerator.cs
- ScalarType.cs
- SiteMapNodeCollection.cs
- SchemaObjectWriter.cs
- EntityTypeBase.cs
- MarshalByValueComponent.cs
- ObjectAnimationUsingKeyFrames.cs
- BaseTemplateParser.cs
- Decoder.cs
- ContactManager.cs
- MailMessage.cs
- ContextMenuStrip.cs
- OracleConnection.cs
- DeploymentSection.cs
- StorageEntitySetMapping.cs
- OleDbConnectionPoolGroupProviderInfo.cs
- AssemblyLoader.cs
- WSFederationHttpBinding.cs
- FastPropertyAccessor.cs
- DynamicILGenerator.cs
- ExpressionBindingCollection.cs
- DataBoundControl.cs
- ArraySortHelper.cs
- ToolTip.cs
- AssemblyCollection.cs
- EditCommandColumn.cs
- GroupQuery.cs
- XmlAttributeOverrides.cs
- TagMapCollection.cs
- ScriptingRoleServiceSection.cs
- DoubleIndependentAnimationStorage.cs
- BaseTemplateBuildProvider.cs
- BidOverLoads.cs
- Visual3DCollection.cs
- ThemeDirectoryCompiler.cs
- CodeTryCatchFinallyStatement.cs
- PersistenceParticipant.cs
- SecurityPolicySection.cs
- StringOutput.cs
- sortedlist.cs
- SuppressMessageAttribute.cs
- AcceptorSessionSymmetricTransportSecurityProtocol.cs
- EpmTargetPathSegment.cs
- DesignerSerializerAttribute.cs
- ToolStripContentPanelDesigner.cs
- BeginStoryboard.cs
- MiniAssembly.cs
- PagePropertiesChangingEventArgs.cs
- ValidatingPropertiesEventArgs.cs
- SecurityManager.cs
- DataGridDefaultColumnWidthTypeConverter.cs
- XmlSchema.cs
- BaseValidatorDesigner.cs
- DtdParser.cs
- MsmqChannelFactoryBase.cs
- ListInitExpression.cs
- SingleAnimation.cs
- SecurityCapabilities.cs
- FormClosingEvent.cs
- MsmqBindingElementBase.cs
- XsltException.cs
- ACL.cs
- RemoteWebConfigurationHost.cs
- TemplateNameScope.cs
- ProtocolsConfigurationHandler.cs
- XLinq.cs
- ProcessInputEventArgs.cs
- FlowLayout.cs
- TraceContext.cs
- HttpCachePolicyElement.cs
- AbandonedMutexException.cs
- FacetChecker.cs
- SchemaMapping.cs
- XmlSchemaComplexContent.cs
- Int32Rect.cs
- cookieexception.cs
- RTTrackingProfile.cs
- ToolStripActionList.cs
- CapabilitiesSection.cs
- RelationshipEnd.cs
- ToggleButton.cs
- Block.cs
- AuthenticationException.cs
- MiniLockedBorderGlyph.cs
- IgnoreFlushAndCloseStream.cs
- SevenBitStream.cs
- EventLogTraceListener.cs
- ImpersonationOption.cs
- AutomationPeer.cs
- XPathAncestorQuery.cs
- IsolatedStorageFileStream.cs
- ValueUnavailableException.cs
- DynamicField.cs
- Help.cs