Code:
/ Dotnetfx_Vista_SP2 / Dotnetfx_Vista_SP2 / 8.0.50727.4016 / DEVDIV / depot / DevDiv / releases / Orcas / QFE / 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
- EntityStoreSchemaFilterEntry.cs
- PointAnimationUsingPath.cs
- MenuDesigner.cs
- CalendarAutomationPeer.cs
- DataSourceControlBuilder.cs
- QuaternionAnimation.cs
- PackageRelationshipSelector.cs
- EntityDataSourceDesigner.cs
- DesignSurfaceCollection.cs
- LocalizationParserHooks.cs
- HttpResponseInternalWrapper.cs
- FilteredDataSetHelper.cs
- EdmComplexTypeAttribute.cs
- CLSCompliantAttribute.cs
- AnnouncementClient.cs
- RadialGradientBrush.cs
- BufferedConnection.cs
- RepeaterItem.cs
- Scripts.cs
- ImageAnimator.cs
- TreeNodeConverter.cs
- MessagePropertyAttribute.cs
- DocumentSequenceHighlightLayer.cs
- MessagePartProtectionMode.cs
- FactoryRecord.cs
- Vector.cs
- Evaluator.cs
- ModelTreeManager.cs
- DocumentPropertiesDialog.cs
- DirectionalAction.cs
- XmlBoundElement.cs
- util.cs
- Root.cs
- CacheModeValueSerializer.cs
- ClientConfigurationSystem.cs
- SignedXml.cs
- UpdateTranslator.cs
- LowerCaseStringConverter.cs
- SoapExtensionReflector.cs
- ToolStripContainer.cs
- BaseProcessor.cs
- ScrollEventArgs.cs
- NameObjectCollectionBase.cs
- X509ThumbprintKeyIdentifierClause.cs
- CompositeControl.cs
- FontDriver.cs
- Cursor.cs
- BamlMapTable.cs
- PageEventArgs.cs
- FacetValueContainer.cs
- SqlConnectionPoolGroupProviderInfo.cs
- Msec.cs
- DbException.cs
- StreamGeometryContext.cs
- WindowsPen.cs
- LicenseException.cs
- XmlReflectionImporter.cs
- StreamReader.cs
- RequestCacheEntry.cs
- CheckBoxPopupAdapter.cs
- PackagePart.cs
- PrintPreviewDialog.cs
- HttpTransportManager.cs
- SizeConverter.cs
- Win32.cs
- SimpleHandlerFactory.cs
- XmlComment.cs
- EntityDataSourceEntityTypeFilterItem.cs
- TdsRecordBufferSetter.cs
- SqlVisitor.cs
- CodeValidator.cs
- MessageHeaderT.cs
- HyperLinkField.cs
- IDataContractSurrogate.cs
- AutoFocusStyle.xaml.cs
- FormatterServices.cs
- PositiveTimeSpanValidator.cs
- GridViewRowCollection.cs
- GlobalAclOperationRequirement.cs
- XmlElement.cs
- FlowDocumentReaderAutomationPeer.cs
- DBSqlParser.cs
- FontCollection.cs
- ExpressionNode.cs
- SerialPinChanges.cs
- Int32CollectionValueSerializer.cs
- XPathParser.cs
- ToolboxBitmapAttribute.cs
- ResourcePool.cs
- SyndicationItem.cs
- WebPartConnectionCollection.cs
- ObjectDataSourceFilteringEventArgs.cs
- EncoderFallback.cs
- BaseCodePageEncoding.cs
- WorkBatch.cs
- XmlElementList.cs
- TransformedBitmap.cs
- GroupItem.cs
- StylusPointProperty.cs
- TextSchema.cs