Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / Data / System / Data / Sql / SqlUserDefinedTypeAttribute.cs / 1305376 / SqlUserDefinedTypeAttribute.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All Rights Reserved. // Information Contained Herein is Proprietary and Confidential. // //[....] //[....] //daltudov //[....] //beysims //[....] //vadimt //venkar //[....] //----------------------------------------------------------------------------- namespace Microsoft.SqlServer.Server { using System; using System.Data.Common; public enum Format { //: byte Unknown = 0, Native = 1, UserDefined = 2, #if WINFSFunctionality // Only applies to WinFS Structured = 4 #endif } // This custom attribute indicates that the given type is // a SqlServer udt. The properties on the attribute reflect the // physical attributes that will be used when the type is registered // with SqlServer. [AttributeUsage(AttributeTargets.Class | AttributeTargets.Struct, AllowMultiple=false, Inherited=true)] public sealed class SqlUserDefinedTypeAttribute: Attribute { private int m_MaxByteSize; private bool m_IsFixedLength; private bool m_IsByteOrdered; private Format m_format; private string m_fName; // The maximum value for the maxbytesize field, in bytes. internal const int YukonMaxByteSizeValue = 8000; private String m_ValidationMethodName = null; // A required attribute on all udts, used to indicate that the // given type is a udt, and its storage format. public SqlUserDefinedTypeAttribute(Format format) { switch(format) { case Format.Unknown: throw ADP.NotSupportedUserDefinedTypeSerializationFormat((Microsoft.SqlServer.Server.Format)format, "format"); case Format.Native: case Format.UserDefined: #if WINFSFunctionality case Format.Structured: #endif this.m_format = format; break; default: throw ADP.InvalidUserDefinedTypeSerializationFormat((Microsoft.SqlServer.Server.Format)format); } } // The maximum size of this instance, in bytes. Does not have to be // specified for Native serialization. The maximum value // for this property is specified by MaxByteSizeValue. public int MaxByteSize { get { return this.m_MaxByteSize; } set { if (value < -1) { throw ADP.ArgumentOutOfRange("MaxByteSize"); } this.m_MaxByteSize = value; } } // Are all instances of this udt the same size on disk? public bool IsFixedLength { get { return this.m_IsFixedLength; } set { this.m_IsFixedLength = value; } } // Is this type byte ordered, i.e. is the on disk representation // consistent with the ordering semantics for this type? // If true, the binary representation of the type will be used // in comparison by SqlServer. This property enables indexing on the // udt and faster comparisons. public bool IsByteOrdered { get { return this.m_IsByteOrdered; } set { this.m_IsByteOrdered = value; } } // The on-disk format for this type. public Format Format { get { return this.m_format; } } // An Optional method used to validate this UDT // Signature: bool <ValidationMethodName>(); public String ValidationMethodName { get { return this.m_ValidationMethodName; } set { this.m_ValidationMethodName = value; } } public string Name { get { return m_fName; } set { m_fName = value; } } } } // 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
- QuaternionAnimation.cs
- CustomWebEventKey.cs
- SqlInternalConnectionSmi.cs
- Timeline.cs
- WinFormsSpinner.cs
- WebPartVerb.cs
- SourceFileBuildProvider.cs
- TextContainerChangedEventArgs.cs
- SolidColorBrush.cs
- LogRecordSequence.cs
- TextEffectCollection.cs
- InstalledVoice.cs
- XomlSerializationHelpers.cs
- _ChunkParse.cs
- ClientConfigurationHost.cs
- MarkupExtensionParser.cs
- RemotingSurrogateSelector.cs
- CRYPTPROTECT_PROMPTSTRUCT.cs
- StructuralType.cs
- MemberDescriptor.cs
- TogglePatternIdentifiers.cs
- DataGridCaption.cs
- ModifyActivitiesPropertyDescriptor.cs
- ExponentialEase.cs
- CryptoHandle.cs
- ToolboxCategoryItems.cs
- AssemblyUtil.cs
- RectangleGeometry.cs
- FontNamesConverter.cs
- MenuItemBinding.cs
- ImageListStreamer.cs
- SudsParser.cs
- InvalidFilterCriteriaException.cs
- ConfigurationStrings.cs
- ProcessThread.cs
- SqlConnectionPoolProviderInfo.cs
- XmlAtomicValue.cs
- PageWrapper.cs
- SerializationInfo.cs
- PEFileEvidenceFactory.cs
- EventLogEntryCollection.cs
- altserialization.cs
- Funcletizer.cs
- DynamicRendererThreadManager.cs
- Msec.cs
- ValidationErrorCollection.cs
- Mouse.cs
- KnownColorTable.cs
- ToolBarTray.cs
- XNodeValidator.cs
- DataGridCommandEventArgs.cs
- ItemsPanelTemplate.cs
- CipherData.cs
- _SingleItemRequestCache.cs
- DeclarativeCatalogPartDesigner.cs
- PropertyIDSet.cs
- DateTimeFormat.cs
- PolyLineSegment.cs
- HttpDebugHandler.cs
- StrokeIntersection.cs
- XXXInfos.cs
- ResourceDictionaryCollection.cs
- NavigationFailedEventArgs.cs
- ShimAsPublicXamlType.cs
- CustomTypeDescriptor.cs
- BezierSegment.cs
- LongMinMaxAggregationOperator.cs
- ComponentChangedEvent.cs
- RadioButton.cs
- InputLanguageCollection.cs
- Rotation3D.cs
- HMACRIPEMD160.cs
- MsmqAppDomainProtocolHandler.cs
- SystemWebCachingSectionGroup.cs
- MobileTextWriter.cs
- WindowsFormsHostPropertyMap.cs
- XmlILConstructAnalyzer.cs
- CodeDirectiveCollection.cs
- BasicHttpMessageSecurity.cs
- UIElementPropertyUndoUnit.cs
- PageAsyncTask.cs
- CodeComment.cs
- ObjectListShowCommandsEventArgs.cs
- DataGrid.cs
- BehaviorDragDropEventArgs.cs
- RuntimeCompatibilityAttribute.cs
- SimpleRecyclingCache.cs
- DataSourceHelper.cs
- FormatException.cs
- SQLCharsStorage.cs
- shaperfactoryquerycacheentry.cs
- sqlcontext.cs
- WindowsFormsHelpers.cs
- FocusTracker.cs
- ListItemConverter.cs
- ContentPresenter.cs
- JumpPath.cs
- TextFormatterContext.cs
- DataRowView.cs
- safesecurityhelperavalon.cs