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
- HashLookup.cs
- DrawingContextWalker.cs
- TypeValidationEventArgs.cs
- RunWorkerCompletedEventArgs.cs
- CompositionTarget.cs
- Package.cs
- MultiAsyncResult.cs
- ProfileParameter.cs
- TransactedReceiveData.cs
- ProjectedSlot.cs
- XamlBrushSerializer.cs
- SamlAttribute.cs
- DataGridSortCommandEventArgs.cs
- XmlCharType.cs
- WindowsTokenRoleProvider.cs
- SID.cs
- ObjectCloneHelper.cs
- HyperLinkColumn.cs
- ObjectAnimationUsingKeyFrames.cs
- ExpressionHelper.cs
- DataContractSerializerFaultFormatter.cs
- CreatingCookieEventArgs.cs
- RawStylusInputReport.cs
- HttpListenerException.cs
- CodeTypeParameterCollection.cs
- grammarelement.cs
- DataRow.cs
- WhitespaceRuleReader.cs
- MemoryStream.cs
- DictionaryMarkupSerializer.cs
- FontInfo.cs
- ListViewTableRow.cs
- WsdlBuildProvider.cs
- DoubleKeyFrameCollection.cs
- PropertyPushdownHelper.cs
- ToolTip.cs
- DBDataPermissionAttribute.cs
- RadioButtonStandardAdapter.cs
- MetadataSource.cs
- DllHostInitializer.cs
- XmlSchemaAny.cs
- FixedSOMImage.cs
- _AutoWebProxyScriptHelper.cs
- BindingOperations.cs
- WindowsListView.cs
- NameValueSectionHandler.cs
- StringDictionary.cs
- ObjectIDGenerator.cs
- DataListItemCollection.cs
- TimeSpanConverter.cs
- HostedTransportConfigurationManager.cs
- FontFamilyConverter.cs
- ReflectionServiceProvider.cs
- DesignerHelpers.cs
- Triangle.cs
- CallContext.cs
- DataGridRowsPresenter.cs
- CollectionBase.cs
- RewritingPass.cs
- NameTable.cs
- TaiwanLunisolarCalendar.cs
- EventlogProvider.cs
- NoneExcludedImageIndexConverter.cs
- CompoundFileDeflateTransform.cs
- TableLayoutRowStyleCollection.cs
- RenderTargetBitmap.cs
- SR.cs
- KeyConstraint.cs
- TabletDevice.cs
- DoWhileDesigner.xaml.cs
- RuntimeConfig.cs
- ScriptManagerProxy.cs
- UIntPtr.cs
- HorizontalAlignConverter.cs
- XmlC14NWriter.cs
- PropertyMetadata.cs
- XmlAtomicValue.cs
- ResetableIterator.cs
- RightsManagementSuppressedStream.cs
- ProxyGenerator.cs
- InputBuffer.cs
- TextFormatterImp.cs
- RuntimeConfig.cs
- MenuBase.cs
- SamlConditions.cs
- HttpProfileBase.cs
- MasterPageCodeDomTreeGenerator.cs
- MulticastNotSupportedException.cs
- PropertyMappingExceptionEventArgs.cs
- ScriptControl.cs
- StatementContext.cs
- NetWebProxyFinder.cs
- RequestCacheEntry.cs
- SqlAggregateChecker.cs
- WindowsGraphicsCacheManager.cs
- TextDecorationUnitValidation.cs
- CryptoConfig.cs
- DataGridColumnCollection.cs
- CharEnumerator.cs
- TextRangeEdit.cs