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 / ReturnType.cs / 1 / ReturnType.cs
using System; using System.Collections; using System.Collections.Generic; using System.Collections.Specialized; using System.Diagnostics; using System.Globalization; using System.Xml; using System.Xml.Schema; using System.Data; using System.IO; using System.Data.Metadata.Edm; using System.Data.Entity; namespace System.Data.EntityModel.SchemaObjectModel { class ReturnType : FacetEnabledSchemaElement { #region constructor ////// /// /// internal ReturnType(Function parentElement) : base(parentElement) { _typeUsageBuilder = new TypeUsageBuilder(this); } #endregion internal override SchemaElement Clone(SchemaElement parentElement) { ReturnType parameter = new ReturnType((Function)parentElement); parameter._type = _type; parameter.Name = this.Name; parameter._typeUsageBuilder = this._typeUsageBuilder; parameter._unresolvedType = this._unresolvedType; return parameter; } protected override bool HandleAttribute(XmlReader reader) { if (base.HandleAttribute(reader)) { return true; } else if (CanHandleAttribute(reader, XmlConstants.TypeElement)) { HandleTypeAttribute(reader); return true; } return false; } #region Private Methods ////// /// /// private void HandleTypeAttribute(XmlReader reader) { Debug.Assert(reader != null); Debug.Assert(this._unresolvedType == null); string type; if (!Utils.GetString(Schema, reader, out type)) return; if (!Utils.ValidateDottedName(Schema, reader, type)) return; this.UnresolvedType = type; } #endregion internal override void ResolveTopLevelNames() { Debug.Assert(!this.ParentElement.IsFunctionImport, "FunctionImports have return type as an attribute, so we should NEVER see them here"); base.ResolveTopLevelNames(); if (Schema.ResolveTypeName(this, UnresolvedType, out _type)) { if (!(_type is ScalarType)) { if (Schema.DataModel != SchemaDataModelOption.ProviderManifestModel) { AddError(ErrorCode.FunctionWithNonScalarTypeNotSupported, EdmSchemaErrorSeverity.Error, this, System.Data.Entity.Strings.FunctionWithNonScalarTypeNotSupported(_type.FQName, this.FQName)); } else { AddError(ErrorCode.FunctionWithNonScalarTypeNotSupported, EdmSchemaErrorSeverity.Error, this, System.Data.Entity.Strings.FunctionWithNonEdmTypeNotSupported(_type.FQName, this.FQName)); } } } } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved. using System; using System.Collections; using System.Collections.Generic; using System.Collections.Specialized; using System.Diagnostics; using System.Globalization; using System.Xml; using System.Xml.Schema; using System.Data; using System.IO; using System.Data.Metadata.Edm; using System.Data.Entity; namespace System.Data.EntityModel.SchemaObjectModel { class ReturnType : FacetEnabledSchemaElement { #region constructor ////// /// /// internal ReturnType(Function parentElement) : base(parentElement) { _typeUsageBuilder = new TypeUsageBuilder(this); } #endregion internal override SchemaElement Clone(SchemaElement parentElement) { ReturnType parameter = new ReturnType((Function)parentElement); parameter._type = _type; parameter.Name = this.Name; parameter._typeUsageBuilder = this._typeUsageBuilder; parameter._unresolvedType = this._unresolvedType; return parameter; } protected override bool HandleAttribute(XmlReader reader) { if (base.HandleAttribute(reader)) { return true; } else if (CanHandleAttribute(reader, XmlConstants.TypeElement)) { HandleTypeAttribute(reader); return true; } return false; } #region Private Methods ////// /// /// private void HandleTypeAttribute(XmlReader reader) { Debug.Assert(reader != null); Debug.Assert(this._unresolvedType == null); string type; if (!Utils.GetString(Schema, reader, out type)) return; if (!Utils.ValidateDottedName(Schema, reader, type)) return; this.UnresolvedType = type; } #endregion internal override void ResolveTopLevelNames() { Debug.Assert(!this.ParentElement.IsFunctionImport, "FunctionImports have return type as an attribute, so we should NEVER see them here"); base.ResolveTopLevelNames(); if (Schema.ResolveTypeName(this, UnresolvedType, out _type)) { if (!(_type is ScalarType)) { if (Schema.DataModel != SchemaDataModelOption.ProviderManifestModel) { AddError(ErrorCode.FunctionWithNonScalarTypeNotSupported, EdmSchemaErrorSeverity.Error, this, System.Data.Entity.Strings.FunctionWithNonScalarTypeNotSupported(_type.FQName, this.FQName)); } else { AddError(ErrorCode.FunctionWithNonScalarTypeNotSupported, EdmSchemaErrorSeverity.Error, this, System.Data.Entity.Strings.FunctionWithNonEdmTypeNotSupported(_type.FQName, this.FQName)); } } } } } } // 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
- ActivityInterfaces.cs
- AssemblyAssociatedContentFileAttribute.cs
- PageThemeBuildProvider.cs
- DataBinding.cs
- ElementHostPropertyMap.cs
- ScrollContentPresenter.cs
- ExpressionDumper.cs
- HttpServerUtilityBase.cs
- TreeNodeCollection.cs
- IList.cs
- TreeView.cs
- CompositeCollectionView.cs
- ResourceExpression.cs
- Queue.cs
- GenericEnumerator.cs
- DataGridTable.cs
- RegexRunnerFactory.cs
- Stack.cs
- LocationSectionRecord.cs
- ScriptResourceInfo.cs
- sqlstateclientmanager.cs
- PreviousTrackingServiceAttribute.cs
- RequestStatusBarUpdateEventArgs.cs
- TriggerAction.cs
- DynamicPhysicalDiscoSearcher.cs
- IdnElement.cs
- JpegBitmapDecoder.cs
- TextDecorationCollection.cs
- InterleavedZipPartStream.cs
- ConfigurationStrings.cs
- CacheOutputQuery.cs
- RubberbandSelector.cs
- SecurityAccessDeniedException.cs
- RenderContext.cs
- VisualStyleInformation.cs
- HttpInputStream.cs
- RectangleGeometry.cs
- WebPartDisplayModeCancelEventArgs.cs
- Guid.cs
- TreeWalkHelper.cs
- UnsafeNativeMethods.cs
- ObjectDataSourceMethodEventArgs.cs
- BrowserCapabilitiesCompiler.cs
- UpdateException.cs
- ListViewGroupItemCollection.cs
- FloatSumAggregationOperator.cs
- RecordBuilder.cs
- TemplateManager.cs
- ListBase.cs
- ReadOnlyCollectionBuilder.cs
- AnnotationDocumentPaginator.cs
- XmlAnyElementAttributes.cs
- InputReportEventArgs.cs
- HttpContextServiceHost.cs
- ChannelSinkStacks.cs
- MediaContext.cs
- Attributes.cs
- TextStore.cs
- ParameterSubsegment.cs
- ServiceContractListItemList.cs
- AddressingVersion.cs
- XmlDocument.cs
- ClassicBorderDecorator.cs
- ServiceNameCollection.cs
- XmlAttributeProperties.cs
- TreeView.cs
- EntityConnectionStringBuilderItem.cs
- WebSysDefaultValueAttribute.cs
- ProtocolsConfigurationHandler.cs
- ActiveXContainer.cs
- Version.cs
- XmlObjectSerializerReadContextComplex.cs
- PropertyDescriptorCollection.cs
- NameValuePermission.cs
- CachingHintValidation.cs
- RtfToXamlReader.cs
- StackBuilderSink.cs
- ParallelTimeline.cs
- EmptyStringExpandableObjectConverter.cs
- Win32Interop.cs
- CommandLibraryHelper.cs
- SynchronizationLockException.cs
- URL.cs
- TextPattern.cs
- VisualStates.cs
- CodeRegionDirective.cs
- QueryValue.cs
- IDReferencePropertyAttribute.cs
- ModelUIElement3D.cs
- DateTimeSerializationSection.cs
- OneOfTypeConst.cs
- WebSysDisplayNameAttribute.cs
- ToolStripStatusLabel.cs
- XmlSchemaAny.cs
- FloaterParagraph.cs
- UrlMappingsSection.cs
- DrawingGroupDrawingContext.cs
- Resources.Designer.cs
- DataMisalignedException.cs
- InternalConfigHost.cs