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
- EmptyStringExpandableObjectConverter.cs
- Win32.cs
- ListViewSortEventArgs.cs
- TextEditorDragDrop.cs
- EmptyImpersonationContext.cs
- DynamicDocumentPaginator.cs
- IPipelineRuntime.cs
- ConstructorNeedsTagAttribute.cs
- CommandBinding.cs
- CustomErrorCollection.cs
- MetadataArtifactLoaderCompositeResource.cs
- BufferCache.cs
- SiteMembershipCondition.cs
- ContextMenuService.cs
- SBCSCodePageEncoding.cs
- ModuleConfigurationInfo.cs
- IntSecurity.cs
- ColorConverter.cs
- BooleanExpr.cs
- DataBindingCollection.cs
- GatewayIPAddressInformationCollection.cs
- DocumentXmlWriter.cs
- ReachSerializer.cs
- autovalidator.cs
- CodeDelegateCreateExpression.cs
- AmbientLight.cs
- FlowDocumentScrollViewer.cs
- RtfToXamlReader.cs
- XamlBrushSerializer.cs
- QuaternionValueSerializer.cs
- UdpRetransmissionSettings.cs
- StaticContext.cs
- ConstraintStruct.cs
- FontStyles.cs
- SimpleWebHandlerParser.cs
- EntryPointNotFoundException.cs
- EncryptedPackageFilter.cs
- EmissiveMaterial.cs
- XsdBuildProvider.cs
- AdPostCacheSubstitution.cs
- ListDictionaryInternal.cs
- PluralizationServiceUtil.cs
- XPathNode.cs
- ResolveResponse.cs
- PriorityChain.cs
- XmlSchemaAttributeGroupRef.cs
- HtmlElementEventArgs.cs
- AndAlso.cs
- DataGridViewIntLinkedList.cs
- GeneralTransformGroup.cs
- Utils.cs
- DbDataAdapter.cs
- CodeCommentStatement.cs
- InputProcessorProfiles.cs
- InvalidOleVariantTypeException.cs
- IgnoreFlushAndCloseStream.cs
- GacUtil.cs
- FixedTextBuilder.cs
- XmlTextReaderImpl.cs
- TextProviderWrapper.cs
- XPathAncestorIterator.cs
- FontWeight.cs
- XmlSchemaValidationException.cs
- WindowsRegion.cs
- ProfileManager.cs
- DirectoryInfo.cs
- DecoderReplacementFallback.cs
- ColorTransformHelper.cs
- ProfileBuildProvider.cs
- AncillaryOps.cs
- Pair.cs
- Dump.cs
- EventBuilder.cs
- RoleManagerModule.cs
- QuaternionValueSerializer.cs
- MessageEncodingBindingElement.cs
- DesignTimeType.cs
- UpdatableWrapper.cs
- RadioButtonDesigner.cs
- StorageMappingItemLoader.cs
- ConnectionPoint.cs
- WebPartCollection.cs
- TimeSpanMinutesConverter.cs
- OperationContractGenerationContext.cs
- ComboBoxRenderer.cs
- LongValidatorAttribute.cs
- ServiceModelEnumValidator.cs
- LoginAutoFormat.cs
- SequenceDesigner.cs
- WindowPattern.cs
- documentsequencetextpointer.cs
- KeySpline.cs
- WriteableOnDemandPackagePart.cs
- ipaddressinformationcollection.cs
- EntityDataSourceView.cs
- Ports.cs
- WebPartTracker.cs
- UnsafeNativeMethods.cs
- LayoutSettings.cs
- ErrorHandlerModule.cs