Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / Orcas / SP / ndp / fx / src / DataEntity / System / Data / EntityModel / SchemaObjectModel / FacetEnabledSchemaElement.cs / 1 / FacetEnabledSchemaElement.cs
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Data.Metadata.Edm; using System.Diagnostics; using System.Xml; namespace System.Data.EntityModel.SchemaObjectModel { abstract class FacetEnabledSchemaElement : SchemaElement { protected SchemaType _type = null; protected string _unresolvedType = null; protected TypeUsageBuilder _typeUsageBuilder; #region public properties public new Function ParentElement { get { return base.ParentElement as Function; } } public SchemaType Type { get { return _type; } } public TypeUsage TypeUsage { get { return _typeUsageBuilder.TypeUsage; } } public bool HasUserDefinedFacets { get { return _typeUsageBuilder.HasUserDefinedFacets; } } #endregion #region Internal Properties internal string UnresolvedType { get { return _unresolvedType; } set { _unresolvedType = value; } } #endregion #region Public Methods ////// /// /// internal FacetEnabledSchemaElement(Function parentElement) : base(parentElement) { } #endregion #region Internal Methods internal override void ResolveTopLevelNames() { base.ResolveTopLevelNames(); Debug.Assert(this.Type == null, "This must be resolved exactly once"); if (Schema.ResolveTypeName(this, UnresolvedType, out _type)) { if (!(_type is ScalarType)) { AddError(ErrorCode.FunctionWithNonScalarTypeNotSupported, EdmSchemaErrorSeverity.Error, this, System.Data.Entity.Strings.FunctionWithNonScalarTypeNotSupported(_type.FQName, this.ParentElement.FQName)); return; } if (_typeUsageBuilder.HasUserDefinedFacets) { bool isInProviderManifest = Schema.DataModel == SchemaDataModelOption.ProviderManifestModel; _typeUsageBuilder.ValidateAndSetTypeUsage((ScalarType)_type, !isInProviderManifest); } } } #endregion protected override bool HandleAttribute(XmlReader reader) { if (base.HandleAttribute(reader)) { return true; } else if (_typeUsageBuilder.HandleAttribute(reader)) { return true; } return false; } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved. using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Data.Metadata.Edm; using System.Diagnostics; using System.Xml; namespace System.Data.EntityModel.SchemaObjectModel { abstract class FacetEnabledSchemaElement : SchemaElement { protected SchemaType _type = null; protected string _unresolvedType = null; protected TypeUsageBuilder _typeUsageBuilder; #region public properties public new Function ParentElement { get { return base.ParentElement as Function; } } public SchemaType Type { get { return _type; } } public TypeUsage TypeUsage { get { return _typeUsageBuilder.TypeUsage; } } public bool HasUserDefinedFacets { get { return _typeUsageBuilder.HasUserDefinedFacets; } } #endregion #region Internal Properties internal string UnresolvedType { get { return _unresolvedType; } set { _unresolvedType = value; } } #endregion #region Public Methods ////// /// /// internal FacetEnabledSchemaElement(Function parentElement) : base(parentElement) { } #endregion #region Internal Methods internal override void ResolveTopLevelNames() { base.ResolveTopLevelNames(); Debug.Assert(this.Type == null, "This must be resolved exactly once"); if (Schema.ResolveTypeName(this, UnresolvedType, out _type)) { if (!(_type is ScalarType)) { AddError(ErrorCode.FunctionWithNonScalarTypeNotSupported, EdmSchemaErrorSeverity.Error, this, System.Data.Entity.Strings.FunctionWithNonScalarTypeNotSupported(_type.FQName, this.ParentElement.FQName)); return; } if (_typeUsageBuilder.HasUserDefinedFacets) { bool isInProviderManifest = Schema.DataModel == SchemaDataModelOption.ProviderManifestModel; _typeUsageBuilder.ValidateAndSetTypeUsage((ScalarType)_type, !isInProviderManifest); } } } #endregion protected override bool HandleAttribute(XmlReader reader) { if (base.HandleAttribute(reader)) { return true; } else if (_typeUsageBuilder.HandleAttribute(reader)) { return true; } return false; } } } // 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
- SqlDataSourceCommandEventArgs.cs
- Faults.cs
- HttpWrapper.cs
- RepeatButton.cs
- OracleParameterCollection.cs
- EpmHelper.cs
- BindingCollection.cs
- QueryGeneratorBase.cs
- Size3DConverter.cs
- DefaultMemberAttribute.cs
- DrawingDrawingContext.cs
- WinEventQueueItem.cs
- ExpressionBuilderContext.cs
- StringUtil.cs
- dbenumerator.cs
- PropertyEmitterBase.cs
- Group.cs
- UserControlBuildProvider.cs
- SqlGenericUtil.cs
- ValidatingPropertiesEventArgs.cs
- PointLight.cs
- EnumerableCollectionView.cs
- XmlTypeMapping.cs
- TdsParser.cs
- StickyNoteAnnotations.cs
- MailHeaderInfo.cs
- DefinitionUpdate.cs
- OrderedDictionary.cs
- XsltArgumentList.cs
- CodeRemoveEventStatement.cs
- DataGridViewCellErrorTextNeededEventArgs.cs
- ResXResourceWriter.cs
- ConfigurationPropertyAttribute.cs
- ToolStripDropDownItem.cs
- WindowAutomationPeer.cs
- Root.cs
- PriorityQueue.cs
- PixelFormatConverter.cs
- MutexSecurity.cs
- BaseParagraph.cs
- HandledEventArgs.cs
- SortFieldComparer.cs
- safex509handles.cs
- HelpKeywordAttribute.cs
- MatrixAnimationUsingPath.cs
- WindowsNonControl.cs
- ServiceModelReg.cs
- MetadataArtifactLoaderXmlReaderWrapper.cs
- RichTextBoxConstants.cs
- InstanceDescriptor.cs
- SeekableMessageNavigator.cs
- String.cs
- FormattedText.cs
- OdbcInfoMessageEvent.cs
- SqlConnectionPoolGroupProviderInfo.cs
- SocketPermission.cs
- RenderDataDrawingContext.cs
- DataReaderContainer.cs
- ConnectivityStatus.cs
- UnsafeNativeMethods.cs
- OrElse.cs
- FontInfo.cs
- FileDialogCustomPlacesCollection.cs
- NameValueSectionHandler.cs
- XsltInput.cs
- Configuration.cs
- XmlSchemaCollection.cs
- XmlSchemaSimpleContentRestriction.cs
- SoapInteropTypes.cs
- ToolStripDropDownButton.cs
- NullRuntimeConfig.cs
- ChannelManager.cs
- NotCondition.cs
- TypeTypeConverter.cs
- WebBaseEventKeyComparer.cs
- InvalidCastException.cs
- PeerEndPoint.cs
- FormViewInsertedEventArgs.cs
- FrugalMap.cs
- Run.cs
- EventProviderTraceListener.cs
- WpfGeneratedKnownProperties.cs
- DBBindings.cs
- TypeConverterBase.cs
- MessageEventSubscriptionService.cs
- XamlPathDataSerializer.cs
- TokenBasedSetEnumerator.cs
- ListControl.cs
- CardSpaceException.cs
- RIPEMD160Managed.cs
- XPathDocumentBuilder.cs
- ListBindingConverter.cs
- PresentationTraceSources.cs
- PointF.cs
- WebPartCloseVerb.cs
- TreeView.cs
- ProgressBarHighlightConverter.cs
- ComponentCommands.cs
- MethodImplAttribute.cs
- UnsafePeerToPeerMethods.cs