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
- CodeDOMUtility.cs
- DynamicValueConverter.cs
- ReflectionTypeLoadException.cs
- TdsParserHelperClasses.cs
- XhtmlTextWriter.cs
- CatchBlock.cs
- CharacterBufferReference.cs
- OrderedHashRepartitionStream.cs
- BufferedGraphicsContext.cs
- BitArray.cs
- DataGridPageChangedEventArgs.cs
- WebServiceErrorEvent.cs
- CodeAttributeDeclarationCollection.cs
- ChannelSinkStacks.cs
- BitmapEffectInput.cs
- DbConnectionPoolIdentity.cs
- WindowsToolbar.cs
- NamedPipeWorkerProcess.cs
- PagedDataSource.cs
- ThreadAbortException.cs
- TemplatedAdorner.cs
- figurelength.cs
- DATA_BLOB.cs
- NamedPermissionSet.cs
- EntityDataSourceViewSchema.cs
- TaskHelper.cs
- FixedElement.cs
- BaseInfoTable.cs
- PersonalizationDictionary.cs
- DeferredRunTextReference.cs
- ActivationServices.cs
- ActiveXHelper.cs
- ParserStreamGeometryContext.cs
- HtmlControlPersistable.cs
- EFDataModelProvider.cs
- DeflateStream.cs
- RegexCharClass.cs
- DataSourceUtil.cs
- WbemProvider.cs
- Model3DCollection.cs
- SqlDataSourceSelectingEventArgs.cs
- RtfControls.cs
- PowerModeChangedEventArgs.cs
- AddDataControlFieldDialog.cs
- BitStack.cs
- _IPv4Address.cs
- TextWriter.cs
- PrintDialog.cs
- ToggleButton.cs
- FlowLayout.cs
- ActiveXHelper.cs
- XamlWrappingReader.cs
- TransactedBatchingBehavior.cs
- Scripts.cs
- StylusPoint.cs
- BoolExpressionVisitors.cs
- _NetRes.cs
- DynamicField.cs
- BitHelper.cs
- ListCollectionView.cs
- LoginView.cs
- HttpWebRequestElement.cs
- FixedSOMLineRanges.cs
- WebHttpBindingCollectionElement.cs
- DataBinding.cs
- CommandBindingCollection.cs
- MultiBinding.cs
- Canvas.cs
- Queue.cs
- BitmapFrameDecode.cs
- RawAppCommandInputReport.cs
- Canvas.cs
- UseManagedPresentationElement.cs
- RewritingSimplifier.cs
- CodePrimitiveExpression.cs
- ProfileSettingsCollection.cs
- IODescriptionAttribute.cs
- GlyphRunDrawing.cs
- WinHttpWebProxyFinder.cs
- ModuleBuilderData.cs
- WebBrowserContainer.cs
- RegisteredExpandoAttribute.cs
- OneWayBindingElementImporter.cs
- DataGridRowAutomationPeer.cs
- SqlOuterApplyReducer.cs
- MediaCommands.cs
- WorkItem.cs
- XsdBuilder.cs
- StaticDataManager.cs
- StorageAssociationSetMapping.cs
- OdbcStatementHandle.cs
- UrlPath.cs
- AddInActivator.cs
- DataControlLinkButton.cs
- QuerySafeNavigator.cs
- DebugManager.cs
- RecognizedPhrase.cs
- ResourceDictionaryCollection.cs
- ProcessThreadCollection.cs
- PngBitmapDecoder.cs