Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / DataEntity / System / Data / EntityModel / SchemaObjectModel / FacetDescriptionElement.cs / 1305376 / FacetDescriptionElement.cs
//---------------------------------------------------------------------- //// Copyright (c) Microsoft Corporation. All rights reserved. // // // @owner [....] // @backupOwner [....] //--------------------------------------------------------------------- using System; using System.Collections.Generic; using System.Text; using System.Data.Metadata.Edm; using System.Xml; using System.Diagnostics; namespace System.Data.EntityModel.SchemaObjectModel { internal abstract class FacetDescriptionElement : SchemaElement { int? _minValue; int? _maxValue; object _defaultValue; bool _isConstant; // won't be populated till you call CreateAndValidate FacetDescription _facetDescription; public FacetDescriptionElement(TypeElement type, string name) : base(type, name) { } protected override bool ProhibitAttribute(string namespaceUri, string localName) { if (base.ProhibitAttribute(namespaceUri, localName)) { return true; } if (namespaceUri == null && localName == XmlConstants.Name) { return false; } return false; } protected override bool HandleAttribute(XmlReader reader) { if (base.HandleAttribute(reader)) { return true; } else if (CanHandleAttribute(reader, XmlConstants.MinimumAttribute)) { HandleMinimumAttribute(reader); return true; } else if (CanHandleAttribute(reader, XmlConstants.MaximumAttribute)) { HandleMaximumAttribute(reader); return true; } else if (CanHandleAttribute(reader, XmlConstants.DefaultValueAttribute)) { HandleDefaultAttribute(reader); return true; } else if (CanHandleAttribute(reader, XmlConstants.ConstantAttribute)) { HandleConstantAttribute(reader); return true; } return false; } ///////////////////////////////////////////////////////////////////// // Attribute Handlers ////// Handler for the Minimum attribute /// /// xml reader currently positioned at Minimum attribute protected void HandleMinimumAttribute(XmlReader reader) { int value = -1; if (HandleIntAttribute(reader, ref value)) { _minValue = value; } } ////// Handler for the Maximum attribute /// /// xml reader currently positioned at Maximum attribute protected void HandleMaximumAttribute(XmlReader reader) { int value = -1; if (HandleIntAttribute(reader, ref value)) { _maxValue = value; } } ////// Handler for the Default attribute /// /// xml reader currently positioned at Default attribute protected abstract void HandleDefaultAttribute(XmlReader reader); ////// Handler for the Constant attribute /// /// xml reader currently positioned at Constant attribute protected void HandleConstantAttribute(XmlReader reader) { bool value = false; if (HandleBoolAttribute(reader, ref value)) { _isConstant = value; } } public abstract EdmType FacetType{ get; } public int? MinValue { get { return _minValue; } } public int? MaxValue { get { return _maxValue; } } public object DefaultValue { get { return _defaultValue; } set { _defaultValue = value; } } public FacetDescription FacetDescription { get { Debug.Assert(_facetDescription != null, "Did you forget to call CreateAndValidate first?"); return _facetDescription; } } internal void CreateAndValidateFacetDescription(string declaringTypeName) { _facetDescription = new FacetDescription(Name, FacetType, MinValue, MaxValue, DefaultValue, _isConstant, declaringTypeName); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- PreviewKeyDownEventArgs.cs
- IntegerValidatorAttribute.cs
- DataGridViewBand.cs
- FilterableAttribute.cs
- PopupRootAutomationPeer.cs
- IIS7WorkerRequest.cs
- HelpEvent.cs
- XmlILAnnotation.cs
- XmlAttributeCollection.cs
- ParallelRangeManager.cs
- PtsHelper.cs
- RoutedEvent.cs
- MembershipUser.cs
- ThicknessConverter.cs
- TextTabProperties.cs
- ExpressionBindingCollection.cs
- SettingsProperty.cs
- Canvas.cs
- PreProcessor.cs
- GlyphCollection.cs
- ValidationErrorCollection.cs
- SqlConnectionStringBuilder.cs
- InputChannelBinder.cs
- TraceLog.cs
- SmuggledIUnknown.cs
- StrongTypingException.cs
- RegexCaptureCollection.cs
- SByteConverter.cs
- InsufficientMemoryException.cs
- _DisconnectOverlappedAsyncResult.cs
- EventProperty.cs
- WebControlAdapter.cs
- ScriptBehaviorDescriptor.cs
- SerializationSectionGroup.cs
- TaskExtensions.cs
- Subtree.cs
- CheckoutException.cs
- ipaddressinformationcollection.cs
- DbProviderFactories.cs
- RightsManagementEncryptionTransform.cs
- Addressing.cs
- SQLRoleProvider.cs
- AsyncPostBackErrorEventArgs.cs
- X509ThumbprintKeyIdentifierClause.cs
- Type.cs
- ReceiveMessageAndVerifySecurityAsyncResultBase.cs
- LinqDataSourceValidationException.cs
- SafeFindHandle.cs
- GroupBoxAutomationPeer.cs
- WSSecureConversationFeb2005.cs
- StoreContentChangedEventArgs.cs
- RuntimeResourceSet.cs
- ExeConfigurationFileMap.cs
- Vector.cs
- InstanceHandleConflictException.cs
- InvokeProviderWrapper.cs
- AccessViolationException.cs
- AccessDataSourceView.cs
- DataObjectMethodAttribute.cs
- ConstraintEnumerator.cs
- FixedDocumentPaginator.cs
- BitmapMetadataEnumerator.cs
- XpsInterleavingPolicy.cs
- GenericFlowSwitchHelper.cs
- SynchronizedInputHelper.cs
- TextContainerChangedEventArgs.cs
- ServiceProviders.cs
- IsolatedStorageFilePermission.cs
- DesignUtil.cs
- DataGridViewHitTestInfo.cs
- RoutingService.cs
- X509SubjectKeyIdentifierClause.cs
- DrawingVisual.cs
- GradientBrush.cs
- DataTableCollection.cs
- XomlCompilerHelpers.cs
- RelatedPropertyManager.cs
- Label.cs
- FormatControl.cs
- SharedHttpsTransportManager.cs
- ColumnResizeAdorner.cs
- ClientConfigurationHost.cs
- CompilerParameters.cs
- RuntimeTransactionHandle.cs
- SqlMethods.cs
- Error.cs
- ClientScriptItemCollection.cs
- SizeChangedInfo.cs
- MissingManifestResourceException.cs
- ImageAutomationPeer.cs
- SerialReceived.cs
- OdbcConnectionPoolProviderInfo.cs
- OneWayChannelListener.cs
- DoubleCollection.cs
- NullEntityWrapper.cs
- DataBoundControlAdapter.cs
- ListBoxItemWrapperAutomationPeer.cs
- XamlPointCollectionSerializer.cs
- CultureInfo.cs
- CodeCommentStatementCollection.cs