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
- filewebresponse.cs
- MonikerProxyAttribute.cs
- SkinBuilder.cs
- ContentValidator.cs
- TreeSet.cs
- DataGridHelper.cs
- NamedObject.cs
- PropertyTabAttribute.cs
- MatrixStack.cs
- PrincipalPermission.cs
- ProxyManager.cs
- OleDragDropHandler.cs
- DisposableCollectionWrapper.cs
- SqlFlattener.cs
- Int32CAMarshaler.cs
- BindingNavigator.cs
- CriticalFileToken.cs
- EntityDataSourceContextDisposingEventArgs.cs
- MaskDescriptors.cs
- ImagingCache.cs
- Image.cs
- ValueType.cs
- CodeAttributeArgumentCollection.cs
- StoreAnnotationsMap.cs
- NamespaceInfo.cs
- Style.cs
- SQLBinary.cs
- SecurityTokenSerializer.cs
- TemplatePagerField.cs
- DataGridViewCellParsingEventArgs.cs
- WebServiceFaultDesigner.cs
- TextRangeEditTables.cs
- CodeDOMUtility.cs
- DataObject.cs
- FontStretches.cs
- CodeCatchClause.cs
- RuleSetDialog.Designer.cs
- FacetEnabledSchemaElement.cs
- XmlSerializationWriter.cs
- NullableFloatMinMaxAggregationOperator.cs
- SelectedDatesCollection.cs
- HtmlInputPassword.cs
- SqlTypesSchemaImporter.cs
- WindowsFormsHostAutomationPeer.cs
- SystemDropShadowChrome.cs
- SchemaLookupTable.cs
- OpenTypeCommon.cs
- Msmq3PoisonHandler.cs
- PageEventArgs.cs
- ToolStripItemClickedEventArgs.cs
- OperationResponse.cs
- RoleGroup.cs
- AssemblyName.cs
- RequestBringIntoViewEventArgs.cs
- PtsHost.cs
- PointAnimationBase.cs
- SafeEventLogReadHandle.cs
- EntityStoreSchemaGenerator.cs
- hresults.cs
- ConfigurationConverterBase.cs
- EntityChangedParams.cs
- AsyncPostBackTrigger.cs
- ComPlusDiagnosticTraceRecords.cs
- StorageComplexPropertyMapping.cs
- SessionEndingCancelEventArgs.cs
- PerformanceCounterCategory.cs
- FacetDescription.cs
- Attribute.cs
- ListView.cs
- EventListener.cs
- MultilineStringConverter.cs
- XDRSchema.cs
- RenderContext.cs
- GlyphInfoList.cs
- InheritanceContextChangedEventManager.cs
- DynamicObject.cs
- CaseInsensitiveHashCodeProvider.cs
- SqlSelectStatement.cs
- GiveFeedbackEvent.cs
- ProxyWebPartConnectionCollection.cs
- DateTimeValueSerializer.cs
- Switch.cs
- OptimizedTemplateContentHelper.cs
- ImplicitInputBrush.cs
- JapaneseCalendar.cs
- VisualBrush.cs
- XPathSingletonIterator.cs
- EventHandlerList.cs
- SecurityHeader.cs
- mactripleDES.cs
- PanelStyle.cs
- xmlsaver.cs
- TimeSpanStorage.cs
- ElementAction.cs
- SortQuery.cs
- TextTreeUndoUnit.cs
- ToolStripSettings.cs
- LogicalChannel.cs
- Vector3D.cs
- AccessDataSourceDesigner.cs