Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / Orcas / NetFXw7 / 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
- SubMenuStyleCollectionEditor.cs
- XdrBuilder.cs
- CompilationSection.cs
- InitializationEventAttribute.cs
- InkCanvasInnerCanvas.cs
- BounceEase.cs
- DocumentManager.cs
- PasswordDeriveBytes.cs
- Transform3DCollection.cs
- ComponentResourceManager.cs
- TextServicesHost.cs
- DbConnectionPoolCounters.cs
- RangeBaseAutomationPeer.cs
- AsymmetricSignatureFormatter.cs
- DrawingImage.cs
- errorpatternmatcher.cs
- DataProtection.cs
- UniqueEventHelper.cs
- ByteStreamGeometryContext.cs
- SBCSCodePageEncoding.cs
- BooleanAnimationBase.cs
- XmlSchemaSimpleContentExtension.cs
- _CookieModule.cs
- CodeTypeReferenceExpression.cs
- LoopExpression.cs
- ParameterExpression.cs
- ExtractCollection.cs
- NamespaceCollection.cs
- DateBoldEvent.cs
- DesignerAdapterUtil.cs
- PeerResolverSettings.cs
- UInt32.cs
- SoapMessage.cs
- KeySpline.cs
- _ShellExpression.cs
- ComponentEvent.cs
- ScriptDescriptor.cs
- UIntPtr.cs
- KnownIds.cs
- ToolboxItemLoader.cs
- TextParagraphView.cs
- RevocationPoint.cs
- TrustSection.cs
- WebSysDisplayNameAttribute.cs
- TransactionOptions.cs
- XPathSingletonIterator.cs
- DynamicEndpointElement.cs
- CheckedPointers.cs
- NameValueFileSectionHandler.cs
- Size3DValueSerializer.cs
- Vector3DIndependentAnimationStorage.cs
- WebScriptServiceHostFactory.cs
- SqlCrossApplyToCrossJoin.cs
- WebPartsPersonalization.cs
- ZipIOEndOfCentralDirectoryBlock.cs
- PlainXmlDeserializer.cs
- OrderByQueryOptionExpression.cs
- ObjectDataProvider.cs
- WebPartsPersonalizationAuthorization.cs
- DataContext.cs
- SoapUnknownHeader.cs
- ParamArrayAttribute.cs
- OSFeature.cs
- XmlDataSourceNodeDescriptor.cs
- StateDesigner.TransitionInfo.cs
- DataGridTablesFactory.cs
- MediaContextNotificationWindow.cs
- Parser.cs
- Expression.cs
- EntityDesignerBuildProvider.cs
- WebHttpElement.cs
- Item.cs
- FontFamily.cs
- DataTablePropertyDescriptor.cs
- SecurityTimestamp.cs
- SqlPersonalizationProvider.cs
- BrowserTree.cs
- HyperLinkField.cs
- OpenTypeLayout.cs
- HtmlControlPersistable.cs
- EmptyControlCollection.cs
- OracleInfoMessageEventArgs.cs
- ContentPropertyAttribute.cs
- GatewayDefinition.cs
- MessageQueueInstaller.cs
- NamedPipeTransportSecurity.cs
- Models.cs
- SafeRegistryHandle.cs
- CompoundFileStorageReference.cs
- ServiceInfoCollection.cs
- ProfileEventArgs.cs
- DefaultTypeArgumentAttribute.cs
- VScrollBar.cs
- UrlMappingsModule.cs
- DocumentViewerAutomationPeer.cs
- DynamicPropertyReader.cs
- StreamWithDictionary.cs
- TextDocumentView.cs
- DesignerActionVerbItem.cs
- WebDisplayNameAttribute.cs