Code:
/ FX-1434 / FX-1434 / 1.0 / untmp / whidbey / REDBITS / ndp / fx / src / Xml / System / Xml / schema / CompiledIdentityConstraint.cs / 1 / 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.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- DataGridViewRowCollection.cs
- SafeLibraryHandle.cs
- ConnectionStringsExpressionBuilder.cs
- TreeView.cs
- TextBounds.cs
- PrimaryKeyTypeConverter.cs
- PenCursorManager.cs
- Fault.cs
- DataStreams.cs
- CodeFieldReferenceExpression.cs
- TakeOrSkipWhileQueryOperator.cs
- WebHttpBehavior.cs
- RemoteWebConfigurationHost.cs
- GeometryConverter.cs
- CompilationSection.cs
- StretchValidation.cs
- WsdlBuildProvider.cs
- Image.cs
- ProfilePropertyNameValidator.cs
- LinqDataSourceDeleteEventArgs.cs
- StylusShape.cs
- TextDecorationCollectionConverter.cs
- WebPartsPersonalizationAuthorization.cs
- ReferencedAssembly.cs
- ActionNotSupportedException.cs
- MouseOverProperty.cs
- HMACSHA256.cs
- AutomationElementIdentifiers.cs
- JapaneseCalendar.cs
- StrongNameKeyPair.cs
- AnnotationResource.cs
- ValidatingCollection.cs
- InvalidOleVariantTypeException.cs
- Executor.cs
- Property.cs
- MultiTrigger.cs
- ApplySecurityAndSendAsyncResult.cs
- GeneralTransform3DTo2DTo3D.cs
- PbrsForward.cs
- EventLogEntryCollection.cs
- SemanticValue.cs
- BoundColumn.cs
- XsltSettings.cs
- StyleModeStack.cs
- WCFBuildProvider.cs
- ReadOnlyAttribute.cs
- FrameworkTemplate.cs
- DBDataPermissionAttribute.cs
- ProtocolsConfigurationHandler.cs
- TreeBuilderBamlTranslator.cs
- RulePatternOps.cs
- AdapterDictionary.cs
- ContractNamespaceAttribute.cs
- FileLevelControlBuilderAttribute.cs
- Types.cs
- XPathAncestorQuery.cs
- IconEditor.cs
- PropertyTab.cs
- Rect3DValueSerializer.cs
- DataColumnCollection.cs
- ObjectManager.cs
- ScrollEvent.cs
- PhysicalAddress.cs
- BeginEvent.cs
- BinaryObjectInfo.cs
- WebContext.cs
- DrawingImage.cs
- EndOfStreamException.cs
- StrongNameIdentityPermission.cs
- UIServiceHelper.cs
- RawMouseInputReport.cs
- RootBuilder.cs
- XmlSchemaSimpleTypeList.cs
- ListViewTableRow.cs
- AbandonedMutexException.cs
- ProfileInfo.cs
- DataGridCaption.cs
- SmtpLoginAuthenticationModule.cs
- SigningDialog.cs
- SafeFindHandle.cs
- MediaPlayerState.cs
- ElementAction.cs
- ToolboxComponentsCreatedEventArgs.cs
- LabelTarget.cs
- DesignerDataView.cs
- PageBuildProvider.cs
- Listbox.cs
- QilIterator.cs
- GrowingArray.cs
- ChangesetResponse.cs
- SqlDataSourceAdvancedOptionsForm.cs
- ComplusTypeValidator.cs
- NotificationContext.cs
- DataListItemCollection.cs
- DebugTracing.cs
- TableRowGroupCollection.cs
- PolicyValidationException.cs
- RowUpdatingEventArgs.cs
- SearchForVirtualItemEventArgs.cs
- EntitySqlQueryBuilder.cs