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
- TabControlAutomationPeer.cs
- XmlReflectionImporter.cs
- TableRow.cs
- MarkupCompilePass1.cs
- MemoryPressure.cs
- SocketException.cs
- XmlReaderDelegator.cs
- InstanceNotFoundException.cs
- NamespaceTable.cs
- NavigationEventArgs.cs
- WeakReference.cs
- SAPIEngineTypes.cs
- OwnerDrawPropertyBag.cs
- DrawingContextDrawingContextWalker.cs
- HttpApplicationFactory.cs
- SubqueryRules.cs
- CompositeKey.cs
- odbcmetadatacolumnnames.cs
- ReceiveDesigner.xaml.cs
- BuildManagerHost.cs
- RSACryptoServiceProvider.cs
- StorageBasedPackageProperties.cs
- SchemaNames.cs
- CellPartitioner.cs
- ImageSourceValueSerializer.cs
- ConfigXmlText.cs
- GACIdentityPermission.cs
- ThreadAbortException.cs
- ResXDataNode.cs
- CompilationAssemblyInstallComponent.cs
- TraceHandler.cs
- DifferencingCollection.cs
- FieldMetadata.cs
- KeyEvent.cs
- InitializeCorrelation.cs
- TypeSystem.cs
- PipelineModuleStepContainer.cs
- PopOutPanel.cs
- EncodingDataItem.cs
- initElementDictionary.cs
- XsltContext.cs
- COSERVERINFO.cs
- MILUtilities.cs
- SafeRightsManagementQueryHandle.cs
- DragStartedEventArgs.cs
- FreezableOperations.cs
- Rfc2898DeriveBytes.cs
- UnaryNode.cs
- HierarchicalDataTemplate.cs
- DataKeyCollection.cs
- SiteMapDataSourceView.cs
- AnnotationResourceCollection.cs
- ComplexBindingPropertiesAttribute.cs
- EncoderFallback.cs
- FeatureSupport.cs
- ActiveXSerializer.cs
- TimeSpanSecondsConverter.cs
- DetailsViewModeEventArgs.cs
- XmlDomTextWriter.cs
- TextCompositionManager.cs
- __ComObject.cs
- HealthMonitoringSection.cs
- Merger.cs
- PasswordBoxAutomationPeer.cs
- UnitySerializationHolder.cs
- MetadataItemCollectionFactory.cs
- ActivityValidator.cs
- PictureBox.cs
- WebServiceClientProxyGenerator.cs
- ScriptResourceInfo.cs
- CryptoHelper.cs
- RelationshipFixer.cs
- WindowsUpDown.cs
- keycontainerpermission.cs
- LogRecordSequence.cs
- CharStorage.cs
- DataGridViewRow.cs
- IriParsingElement.cs
- SqlFileStream.cs
- XmlTextAttribute.cs
- Exceptions.cs
- CannotUnloadAppDomainException.cs
- WebScriptMetadataMessageEncoderFactory.cs
- XmlArrayItemAttributes.cs
- TextRangeEditLists.cs
- XmlSchemaParticle.cs
- X509Chain.cs
- SqlCacheDependencySection.cs
- ClientBuildManagerTypeDescriptionProviderBridge.cs
- DatePickerAutomationPeer.cs
- ListViewContainer.cs
- DetailsViewPageEventArgs.cs
- CommonRemoteMemoryBlock.cs
- FixedPageStructure.cs
- AmbientProperties.cs
- Point.cs
- DataRowView.cs
- PolyQuadraticBezierSegment.cs
- CustomWebEventKey.cs
- GridViewRowCollection.cs