Code:
/ 4.0 / 4.0 / 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. //------------------------------------------------------------------------------ //// 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
- AvTrace.cs
- ListViewGroupItemCollection.cs
- DBAsyncResult.cs
- PerformanceCountersElement.cs
- ApplicationFileParser.cs
- MultipartContentParser.cs
- DataMemberConverter.cs
- RegionInfo.cs
- SqlAliasesReferenced.cs
- PageCodeDomTreeGenerator.cs
- WebBrowserProgressChangedEventHandler.cs
- EDesignUtil.cs
- RequestStatusBarUpdateEventArgs.cs
- InsufficientMemoryException.cs
- RegisteredExpandoAttribute.cs
- ConfigurationStrings.cs
- CompositeScriptReference.cs
- BrowserCapabilitiesCodeGenerator.cs
- Publisher.cs
- FilteredReadOnlyMetadataCollection.cs
- ConfigurationManagerInternalFactory.cs
- TextRunTypographyProperties.cs
- TypedReference.cs
- StringConverter.cs
- Object.cs
- FontStretches.cs
- DetailsViewCommandEventArgs.cs
- InvalidateEvent.cs
- DeferredReference.cs
- WebEvents.cs
- ManipulationStartedEventArgs.cs
- RelationshipManager.cs
- HtmlAnchor.cs
- FirstMatchCodeGroup.cs
- DataGridItem.cs
- NativeMethods.cs
- ProtocolViolationException.cs
- DrawListViewColumnHeaderEventArgs.cs
- DataGridViewUtilities.cs
- DataObjectAttribute.cs
- TrustExchangeException.cs
- HtmlTableCellCollection.cs
- SystemGatewayIPAddressInformation.cs
- ClosableStream.cs
- _Semaphore.cs
- DefaultValidator.cs
- InputLangChangeEvent.cs
- DataControlExtensions.cs
- NonParentingControl.cs
- ModelServiceImpl.cs
- ListChangedEventArgs.cs
- SchemaTableOptionalColumn.cs
- DelegatingTypeDescriptionProvider.cs
- PrintingPermissionAttribute.cs
- BinaryNode.cs
- ButtonRenderer.cs
- QueryOutputWriter.cs
- CodeArgumentReferenceExpression.cs
- DecoderFallbackWithFailureFlag.cs
- ReachDocumentPageSerializerAsync.cs
- ServiceHttpModule.cs
- QilValidationVisitor.cs
- LookupBindingPropertiesAttribute.cs
- SQLDecimalStorage.cs
- AppDomain.cs
- TraceContextRecord.cs
- BoundColumn.cs
- XamlBuildTaskServices.cs
- FlowDocumentReader.cs
- OutputCacheSettings.cs
- ApplicationId.cs
- SchemaMapping.cs
- AssemblyAttributesGoHere.cs
- TabletDevice.cs
- AudioFormatConverter.cs
- ToolStripSeparator.cs
- DesignerAttribute.cs
- ToolBar.cs
- IPGlobalProperties.cs
- WindowsRichEdit.cs
- EncodingDataItem.cs
- TemplateBindingExpression.cs
- TabControlCancelEvent.cs
- PrinterSettings.cs
- PartialList.cs
- ColorBlend.cs
- RoleManagerSection.cs
- Hash.cs
- MailHeaderInfo.cs
- DataObjectAttribute.cs
- Converter.cs
- IndependentlyAnimatedPropertyMetadata.cs
- CommandDesigner.cs
- Utils.cs
- SafeHandle.cs
- NonDualMessageSecurityOverHttp.cs
- HyperlinkAutomationPeer.cs
- CompiledQuery.cs
- BindableAttribute.cs
- ScriptModule.cs