Code:
/ DotNET / DotNET / 8.0 / untmp / whidbey / REDBITS / ndp / fx / src / Data / System / Data / Sql / SqlUserDefinedTypeAttribute.cs / 1 / 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
- ControlAdapter.cs
- XmlRawWriterWrapper.cs
- AnnotationStore.cs
- AppDomainAttributes.cs
- WmlLinkAdapter.cs
- DocumentReference.cs
- printdlgexmarshaler.cs
- ConversionValidationRule.cs
- DbMetaDataCollectionNames.cs
- EventProviderWriter.cs
- FixedDocument.cs
- XmlNamedNodeMap.cs
- TextClipboardData.cs
- ListDictionary.cs
- CompletionCallbackWrapper.cs
- Missing.cs
- ExpressionBindingCollection.cs
- PerformanceCounterPermission.cs
- ControlAdapter.cs
- SchemaConstraints.cs
- TableChangeProcessor.cs
- StandardMenuStripVerb.cs
- TreeNodeConverter.cs
- NumericUpDownAcceleration.cs
- DataControlPagerLinkButton.cs
- DispatcherTimer.cs
- XPathPatternBuilder.cs
- DataBinder.cs
- SimpleHandlerFactory.cs
- ActivatableWorkflowsQueryResult.cs
- SamlDoNotCacheCondition.cs
- AmbientEnvironment.cs
- DataContract.cs
- UInt64Storage.cs
- WindowsScrollBar.cs
- OpenFileDialog.cs
- Point3D.cs
- SystemIPGlobalProperties.cs
- NameValuePair.cs
- KeyboardEventArgs.cs
- OSFeature.cs
- FontNamesConverter.cs
- GridViewHeaderRowPresenterAutomationPeer.cs
- XmlSerializerFactory.cs
- JsonDeserializer.cs
- DataTableClearEvent.cs
- Int16AnimationUsingKeyFrames.cs
- TextDocumentView.cs
- ColorTranslator.cs
- ToolBarTray.cs
- WmfPlaceableFileHeader.cs
- FieldAccessException.cs
- FixedSOMSemanticBox.cs
- DrawingDrawingContext.cs
- UncommonField.cs
- SessionKeyExpiredException.cs
- _DisconnectOverlappedAsyncResult.cs
- PixelFormat.cs
- SingleAnimation.cs
- MaterializeFromAtom.cs
- DESCryptoServiceProvider.cs
- Context.cs
- WebPartConnectionsDisconnectVerb.cs
- EdmValidator.cs
- Guid.cs
- ReadOnlyDataSource.cs
- ControlEvent.cs
- LinqDataView.cs
- ApplicationException.cs
- TextBoxLine.cs
- PeerDefaultCustomResolverClient.cs
- BasicKeyConstraint.cs
- PlatformCulture.cs
- StrokeNodeOperations2.cs
- ExpandableObjectConverter.cs
- HMACMD5.cs
- WorkflowExecutor.cs
- LoginView.cs
- LocalizationComments.cs
- SystemKeyConverter.cs
- safemediahandle.cs
- FirstMatchCodeGroup.cs
- IntegerValidator.cs
- TaskScheduler.cs
- DataViewManagerListItemTypeDescriptor.cs
- Permission.cs
- ExpressionBuilder.cs
- BitmapMetadataEnumerator.cs
- DataListItem.cs
- DrawingContextDrawingContextWalker.cs
- MenuCommand.cs
- XPathScanner.cs
- sqlpipe.cs
- AudioDeviceOut.cs
- XmlDataLoader.cs
- CodeExpressionCollection.cs
- HttpServerProtocol.cs
- DrawListViewItemEventArgs.cs
- SerializerProvider.cs
- CodeTypeDeclaration.cs