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
- StringAnimationUsingKeyFrames.cs
- StateMachineWorkflow.cs
- UnsafeNativeMethods.cs
- ParamArrayAttribute.cs
- SizeAnimationUsingKeyFrames.cs
- MaskedTextBox.cs
- DotExpr.cs
- RequestCachePolicy.cs
- COSERVERINFO.cs
- File.cs
- KerberosSecurityTokenAuthenticator.cs
- IconEditor.cs
- storagemappingitemcollection.viewdictionary.cs
- RC2CryptoServiceProvider.cs
- TextTreeUndo.cs
- HierarchicalDataBoundControlAdapter.cs
- FileAuthorizationModule.cs
- EntityConnection.cs
- TableLayoutStyleCollection.cs
- Compiler.cs
- WindowsEditBoxRange.cs
- NavigatorInput.cs
- ZipIOCentralDirectoryFileHeader.cs
- WriteableBitmap.cs
- ObjectDataSource.cs
- DataBinder.cs
- MtomMessageEncoder.cs
- RegisteredHiddenField.cs
- PointCollectionValueSerializer.cs
- ImageKeyConverter.cs
- IdnMapping.cs
- HeaderCollection.cs
- FocusWithinProperty.cs
- CatalogPartChrome.cs
- WmlImageAdapter.cs
- ReferentialConstraintRoleElement.cs
- CodeMethodReturnStatement.cs
- MarshalDirectiveException.cs
- sqlinternaltransaction.cs
- processwaithandle.cs
- WindowsPen.cs
- EdmProviderManifest.cs
- DefaultObjectMappingItemCollection.cs
- UiaCoreApi.cs
- HttpApplicationFactory.cs
- ParentQuery.cs
- RowTypePropertyElement.cs
- DataColumnPropertyDescriptor.cs
- ListViewSelectEventArgs.cs
- MethodBuilderInstantiation.cs
- DodSequenceMerge.cs
- VBCodeProvider.cs
- DiagnosticsConfigurationHandler.cs
- CompiledRegexRunner.cs
- DynamicValueConverter.cs
- HTMLTextWriter.cs
- OrderedDictionary.cs
- FocusWithinProperty.cs
- Rfc2898DeriveBytes.cs
- InternalPermissions.cs
- SqlDependencyUtils.cs
- NullRuntimeConfig.cs
- FunctionImportMapping.cs
- PeerSecurityHelpers.cs
- List.cs
- InfiniteTimeSpanConverter.cs
- ResourceExpression.cs
- SamlAttribute.cs
- ColorAnimationBase.cs
- DescendentsWalker.cs
- XmlSecureResolver.cs
- FrameworkReadOnlyPropertyMetadata.cs
- ClaimComparer.cs
- TextRunTypographyProperties.cs
- XmlSchemaGroup.cs
- SiteMapNodeItem.cs
- AutoGeneratedField.cs
- BuiltInExpr.cs
- SwitchCase.cs
- SecurityBindingElementImporter.cs
- ContourSegment.cs
- EnumBuilder.cs
- EncoderFallback.cs
- FacetValueContainer.cs
- HttpProfileBase.cs
- IISUnsafeMethods.cs
- ListControlConvertEventArgs.cs
- EpmContentDeSerializerBase.cs
- ProcessManager.cs
- SourceChangedEventArgs.cs
- PointCollection.cs
- TimelineGroup.cs
- RotationValidation.cs
- XsdValidatingReader.cs
- ImageMapEventArgs.cs
- XmlSerializerVersionAttribute.cs
- WebScriptMetadataInstanceContextProvider.cs
- EventBookmark.cs
- EdmTypeAttribute.cs
- PrintPreviewGraphics.cs