Code:
/ Dotnetfx_Vista_SP2 / Dotnetfx_Vista_SP2 / 8.0.50727.4016 / DEVDIV / depot / DevDiv / releases / whidbey / NetFxQFE / 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.
//
// [....]
//-----------------------------------------------------------------------------
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
- TopClause.cs
- XmlDictionaryWriter.cs
- FileDialog.cs
- PassportAuthenticationEventArgs.cs
- TreeSet.cs
- DesignerResources.cs
- FramingChannels.cs
- DataBinder.cs
- AsynchronousChannelMergeEnumerator.cs
- DataSourceXmlSerializationAttribute.cs
- Utility.cs
- QuaternionKeyFrameCollection.cs
- InternalTypeHelper.cs
- BasicHttpBindingCollectionElement.cs
- TerminatorSinks.cs
- Select.cs
- UnwrappedTypesXmlSerializerManager.cs
- SearchForVirtualItemEventArgs.cs
- ObjectPersistData.cs
- TypeLibraryHelper.cs
- Attribute.cs
- SRGSCompiler.cs
- MSHTMLHost.cs
- PropertyCollection.cs
- LinqDataSourceView.cs
- AddressingProperty.cs
- SqlCommandSet.cs
- StyleXamlParser.cs
- CertificateManager.cs
- BridgeDataRecord.cs
- Int32Rect.cs
- ByteAnimationUsingKeyFrames.cs
- VisualBasic.cs
- RoutingChannelExtension.cs
- ToolStripHighContrastRenderer.cs
- WmpBitmapEncoder.cs
- Form.cs
- IResourceProvider.cs
- SamlAuthorizationDecisionClaimResource.cs
- BooleanSwitch.cs
- PathFigureCollectionValueSerializer.cs
- WebBrowserSiteBase.cs
- JsonQNameDataContract.cs
- CustomError.cs
- CancelEventArgs.cs
- ValidateNames.cs
- DBBindings.cs
- AgileSafeNativeMemoryHandle.cs
- SafeNativeMemoryHandle.cs
- BinaryFormatter.cs
- ContextQuery.cs
- ExtensionFile.cs
- ProjectedSlot.cs
- SafeEventHandle.cs
- StartFileNameEditor.cs
- TypeSystem.cs
- RemoteHelper.cs
- TextTreeInsertElementUndoUnit.cs
- FileDialogCustomPlacesCollection.cs
- XamlWriter.cs
- Sentence.cs
- ProxySimple.cs
- HtmlTextArea.cs
- Tokenizer.cs
- MiniConstructorInfo.cs
- PaperSize.cs
- DataControlField.cs
- TriggerCollection.cs
- DbDataSourceEnumerator.cs
- ScrollViewer.cs
- CharacterShapingProperties.cs
- StatusBar.cs
- DataGridViewRowHeaderCell.cs
- XhtmlBasicTextViewAdapter.cs
- SmtpNegotiateAuthenticationModule.cs
- DesignerActionService.cs
- CfgArc.cs
- FileDialogCustomPlace.cs
- PolicyUtility.cs
- XNameTypeConverter.cs
- EtwTrace.cs
- Stackframe.cs
- TreeNodeConverter.cs
- BooleanProjectedSlot.cs
- EditingMode.cs
- CodeSubDirectory.cs
- SerialPinChanges.cs
- RewritingProcessor.cs
- DocComment.cs
- _OSSOCK.cs
- RectangleF.cs
- IsolatedStorageSecurityState.cs
- WebPartCollection.cs
- TimeSpanValidatorAttribute.cs
- FormClosedEvent.cs
- TagPrefixInfo.cs
- UpdatePanelTrigger.cs
- DataGridViewRow.cs
- PageAsyncTaskManager.cs
- CodeValidator.cs