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
- CompiledRegexRunner.cs
- XmlEnumAttribute.cs
- SimplePropertyEntry.cs
- ACL.cs
- CapabilitiesRule.cs
- RSAPKCS1SignatureDeformatter.cs
- TextTreeTextNode.cs
- DeclaredTypeValidator.cs
- PeerNameResolver.cs
- StorageFunctionMapping.cs
- SourceInterpreter.cs
- ProfessionalColorTable.cs
- SqlTypeSystemProvider.cs
- ObjectTag.cs
- DBDataPermissionAttribute.cs
- ConversionContext.cs
- OpacityConverter.cs
- DataGridState.cs
- LocationSectionRecord.cs
- Avt.cs
- DataGridViewComboBoxColumnDesigner.cs
- ModuleBuilderData.cs
- TrackBarRenderer.cs
- RegexCode.cs
- NameTable.cs
- CacheRequest.cs
- NativeWindow.cs
- SHA1.cs
- ScopelessEnumAttribute.cs
- RegularExpressionValidator.cs
- SynchronizationLockException.cs
- TCPListener.cs
- UnsafeNativeMethods.cs
- AstNode.cs
- DataGridItemCollection.cs
- HashAlgorithm.cs
- WindowsScroll.cs
- EastAsianLunisolarCalendar.cs
- ExtractedStateEntry.cs
- SafeFileMappingHandle.cs
- NotifyParentPropertyAttribute.cs
- ToolStripItemImageRenderEventArgs.cs
- WebBrowserNavigatingEventHandler.cs
- BoundingRectTracker.cs
- IndexerHelper.cs
- FileClassifier.cs
- GridViewEditEventArgs.cs
- ResolveInfo.cs
- DocumentSignatureManager.cs
- OuterGlowBitmapEffect.cs
- TextRangeAdaptor.cs
- PersistChildrenAttribute.cs
- PerfCounters.cs
- PaperSource.cs
- MultiPageTextView.cs
- SupportingTokenSpecification.cs
- WebPartConnectionsConnectVerb.cs
- InstanceKeyView.cs
- ToolStripSeparatorRenderEventArgs.cs
- StrongNameIdentityPermission.cs
- ApplicationManager.cs
- CodeIdentifier.cs
- SqlNamer.cs
- DateTimeConverter2.cs
- ObfuscateAssemblyAttribute.cs
- DynamicResourceExtension.cs
- TextTreeTextBlock.cs
- RecordBuilder.cs
- MatrixAnimationBase.cs
- DBSqlParserTableCollection.cs
- DBConnectionString.cs
- MailSettingsSection.cs
- RegexRunnerFactory.cs
- OperandQuery.cs
- CacheModeValueSerializer.cs
- Soap.cs
- Label.cs
- WsatConfiguration.cs
- HitTestWithPointDrawingContextWalker.cs
- Screen.cs
- DataServiceResponse.cs
- OdbcConnectionPoolProviderInfo.cs
- ThreadPoolTaskScheduler.cs
- EnvironmentPermission.cs
- LocatorPart.cs
- LongValidator.cs
- Timer.cs
- WebPartCancelEventArgs.cs
- DataSourceUtil.cs
- SmtpFailedRecipientException.cs
- Int16AnimationBase.cs
- KeyInterop.cs
- Base64Encoder.cs
- _ProxyChain.cs
- CodeCastExpression.cs
- HttpApplication.cs
- ChildrenQuery.cs
- hresults.cs
- ManifestBasedResourceGroveler.cs
- ImpersonationContext.cs