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
- ComplusTypeValidator.cs
- WebBrowserProgressChangedEventHandler.cs
- ImageConverter.cs
- ChannelManager.cs
- HttpWriter.cs
- XmlCustomFormatter.cs
- TransactionTable.cs
- PhysicalOps.cs
- DataSourceSelectArguments.cs
- TrackingProfile.cs
- AttachedAnnotation.cs
- SqlParameter.cs
- SqlSupersetValidator.cs
- OracleTimeSpan.cs
- DesignSurface.cs
- bidPrivateBase.cs
- CapabilitiesState.cs
- NeutralResourcesLanguageAttribute.cs
- ManagedWndProcTracker.cs
- ClickablePoint.cs
- HebrewCalendar.cs
- CngKeyBlobFormat.cs
- CqlParserHelpers.cs
- ValidatingReaderNodeData.cs
- DPAPIProtectedConfigurationProvider.cs
- WebZone.cs
- ReadOnlyDictionary.cs
- PixelShader.cs
- UITypeEditor.cs
- SqlBuffer.cs
- ChannelEndpointElementCollection.cs
- ByteStreamGeometryContext.cs
- formatter.cs
- XmlEnumAttribute.cs
- IDispatchConstantAttribute.cs
- TextContainerChangeEventArgs.cs
- DbParameterCollectionHelper.cs
- LoginUtil.cs
- DockPanel.cs
- QueryableDataSourceEditData.cs
- COM2PropertyPageUITypeConverter.cs
- HorizontalAlignConverter.cs
- SystemDiagnosticsSection.cs
- RSACryptoServiceProvider.cs
- XmlSchemaSimpleContentRestriction.cs
- ELinqQueryState.cs
- QilVisitor.cs
- FixedSOMContainer.cs
- PrePrepareMethodAttribute.cs
- IndexedGlyphRun.cs
- WSFederationHttpBindingElement.cs
- ObjectViewEntityCollectionData.cs
- SchemaTypeEmitter.cs
- IdentityValidationException.cs
- GenericPrincipal.cs
- BuildManagerHost.cs
- RootDesignerSerializerAttribute.cs
- HttpRawResponse.cs
- PassportAuthentication.cs
- MessageEnumerator.cs
- NetworkInterface.cs
- CodeArrayCreateExpression.cs
- SecurityContextCookieSerializer.cs
- TabletCollection.cs
- ModelProperty.cs
- Line.cs
- TagPrefixCollection.cs
- ClientSideProviderDescription.cs
- BrowserDefinition.cs
- RichTextBox.cs
- TextElement.cs
- mediaclock.cs
- ImplicitInputBrush.cs
- Vector3DConverter.cs
- DateTimeParse.cs
- FileRecordSequence.cs
- WebAdminConfigurationHelper.cs
- MsmqIntegrationMessagePool.cs
- DataGridBoolColumn.cs
- AttributeQuery.cs
- BaseResourcesBuildProvider.cs
- CancelEventArgs.cs
- EntitySet.cs
- WebPartUserCapability.cs
- EncryptedReference.cs
- StorageComplexPropertyMapping.cs
- Command.cs
- AutomationPropertyInfo.cs
- Image.cs
- AnonymousIdentificationModule.cs
- RegionInfo.cs
- LambdaCompiler.Binary.cs
- WebPartEditorOkVerb.cs
- ScrollChrome.cs
- MaterialGroup.cs
- RenderData.cs
- FileSystemEventArgs.cs
- StatusStrip.cs
- AssociationSetEnd.cs
- CodeStatement.cs