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
- DataBindEngine.cs
- MemberDescriptor.cs
- Vector3DCollectionConverter.cs
- DataTable.cs
- WsdlHelpGeneratorElement.cs
- OciEnlistContext.cs
- Typography.cs
- Mouse.cs
- CodeIndexerExpression.cs
- OpCopier.cs
- SafeFileMappingHandle.cs
- Localizer.cs
- FileCodeGroup.cs
- StubHelpers.cs
- SizeF.cs
- FixedPageProcessor.cs
- ObjectDesignerDataSourceView.cs
- ObjectConverter.cs
- ErrorFormatter.cs
- TempFiles.cs
- TextEmbeddedObject.cs
- MaterialGroup.cs
- WindowsFont.cs
- ByteStorage.cs
- ConfigsHelper.cs
- LogRestartAreaEnumerator.cs
- ContainerTracking.cs
- DataPagerFieldCollection.cs
- ErrorLog.cs
- MenuItem.cs
- MenuAutomationPeer.cs
- GradientStopCollection.cs
- DocumentProperties.cs
- ArgumentValue.cs
- ellipse.cs
- DataGridCell.cs
- ByteAnimation.cs
- TaskFileService.cs
- StrongNamePublicKeyBlob.cs
- Method.cs
- EncryptedType.cs
- UidManager.cs
- CurrentTimeZone.cs
- ToolStripStatusLabel.cs
- x509store.cs
- ApplicationCommands.cs
- OdbcTransaction.cs
- OrCondition.cs
- RoleManagerEventArgs.cs
- UrlAuthorizationModule.cs
- NullableDoubleMinMaxAggregationOperator.cs
- UIntPtr.cs
- ScriptControl.cs
- ConnectionPoint.cs
- ConfigXmlText.cs
- TextBoxAutoCompleteSourceConverter.cs
- HttpProtocolReflector.cs
- FragmentQueryKB.cs
- JsonFormatWriterGenerator.cs
- TextBoxDesigner.cs
- Icon.cs
- ServiceHandle.cs
- IPCCacheManager.cs
- SafeProcessHandle.cs
- Regex.cs
- HttpHandlerActionCollection.cs
- InitializerFacet.cs
- BaseUriHelper.cs
- SystemEvents.cs
- UmAlQuraCalendar.cs
- TimeSpanSecondsConverter.cs
- SubqueryRules.cs
- CalendarDay.cs
- RadioButtonFlatAdapter.cs
- SrgsDocumentParser.cs
- ContractUtils.cs
- AbandonedMutexException.cs
- PermissionSetTriple.cs
- BuildProvider.cs
- PropertyRef.cs
- WebReferenceCollection.cs
- Set.cs
- OleDbRowUpdatingEvent.cs
- SqlBuilder.cs
- RedistVersionInfo.cs
- SynchronizationLockException.cs
- DecoderNLS.cs
- RightsManagementInformation.cs
- UniqueConstraint.cs
- DataGridViewDataConnection.cs
- CodeRemoveEventStatement.cs
- VirtualPathData.cs
- Control.cs
- WeakHashtable.cs
- RouteItem.cs
- QuaternionRotation3D.cs
- ZoneLinkButton.cs
- AttributeUsageAttribute.cs
- RegexCompilationInfo.cs
- thaishape.cs