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
- ImmComposition.cs
- SpellerInterop.cs
- FixedPageAutomationPeer.cs
- RawUIStateInputReport.cs
- RectAnimationUsingKeyFrames.cs
- Region.cs
- ExpressionDumper.cs
- Point3DCollection.cs
- SqlCacheDependencyDatabaseCollection.cs
- ApplicationInfo.cs
- KnownTypesHelper.cs
- ContractHandle.cs
- mda.cs
- Claim.cs
- DataGridCommandEventArgs.cs
- ADMembershipUser.cs
- TextSpan.cs
- ResourceReader.cs
- DiagnosticTraceSource.cs
- WebPartCollection.cs
- EncryptedType.cs
- FlowDocumentPage.cs
- NotFiniteNumberException.cs
- StrokeIntersection.cs
- RemoveStoryboard.cs
- PathGradientBrush.cs
- PseudoWebRequest.cs
- RuntimeConfig.cs
- AppearanceEditorPart.cs
- FormsAuthenticationCredentials.cs
- GraphicsContainer.cs
- AsmxEndpointPickerExtension.cs
- CopyAction.cs
- PartitionResolver.cs
- DNS.cs
- XmlSchemaValidationException.cs
- ObjectItemCollection.cs
- ClockGroup.cs
- TreeNodeBindingCollection.cs
- WorkflowControlClient.cs
- XsltLibrary.cs
- XmlnsPrefixAttribute.cs
- SpnEndpointIdentity.cs
- RayHitTestParameters.cs
- SafeNativeMethods.cs
- PageCodeDomTreeGenerator.cs
- PhysicalOps.cs
- XamlParser.cs
- DataSetMappper.cs
- StandardOleMarshalObject.cs
- XmlDocumentType.cs
- FontFamily.cs
- ResXResourceSet.cs
- PropertyDescriptorComparer.cs
- UInt32Storage.cs
- BuildManagerHost.cs
- HoistedLocals.cs
- DataBinding.cs
- Single.cs
- XhtmlBasicLabelAdapter.cs
- GestureRecognitionResult.cs
- DispatchRuntime.cs
- DbMetaDataCollectionNames.cs
- TypeForwardedToAttribute.cs
- ProvideValueServiceProvider.cs
- SqlXmlStorage.cs
- CodeConstructor.cs
- TypeUtil.cs
- Pen.cs
- OutputCacheProfile.cs
- RunClient.cs
- FixedSOMTable.cs
- ChtmlTextWriter.cs
- WebPartConnection.cs
- GridErrorDlg.cs
- ConnectionPoolManager.cs
- VisualTreeHelper.cs
- SqlBooleanMismatchVisitor.cs
- OpenTypeLayout.cs
- login.cs
- HttpCacheVary.cs
- SiteMapSection.cs
- BadImageFormatException.cs
- ComponentTray.cs
- StringValueSerializer.cs
- CopyAction.cs
- TransportOutputChannel.cs
- NamespaceCollection.cs
- BooleanConverter.cs
- DataKey.cs
- SequentialUshortCollection.cs
- Main.cs
- BaseTemplateBuildProvider.cs
- ClientUtils.cs
- IPCCacheManager.cs
- RegexCapture.cs
- CheckBox.cs
- ElementUtil.cs
- Document.cs