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
- CSharpCodeProvider.cs
- FullTextLine.cs
- CodeDOMProvider.cs
- Soap.cs
- CacheRequest.cs
- QueryOpcode.cs
- DynamicFilterExpression.cs
- PolyQuadraticBezierSegmentFigureLogic.cs
- TypeResolver.cs
- Padding.cs
- ControlCollection.cs
- ToolStripCodeDomSerializer.cs
- ConnectorSelectionGlyph.cs
- ValidatedControlConverter.cs
- BitmapMetadataBlob.cs
- CryptoApi.cs
- ProviderCollection.cs
- CopyOfAction.cs
- ImportOptions.cs
- CodeDirectionExpression.cs
- GridViewUpdatedEventArgs.cs
- ChangeProcessor.cs
- PropertyItem.cs
- MediaTimeline.cs
- Error.cs
- FontUnitConverter.cs
- PerfCounters.cs
- CompositeControl.cs
- KeyConstraint.cs
- KeyedQueue.cs
- SessionIDManager.cs
- AtomParser.cs
- Ref.cs
- HMACSHA256.cs
- ClrPerspective.cs
- XmlCodeExporter.cs
- CodePageUtils.cs
- TrackingLocation.cs
- EventLogger.cs
- SecurityAlgorithmSuite.cs
- HttpSessionStateWrapper.cs
- LinqExpressionNormalizer.cs
- KeyValueConfigurationElement.cs
- UrlPath.cs
- XmlC14NWriter.cs
- QuaternionRotation3D.cs
- RelOps.cs
- TimeSpanConverter.cs
- ServiceOperationUIEditor.cs
- ButtonFieldBase.cs
- FieldNameLookup.cs
- CaseInsensitiveComparer.cs
- BrowserDefinitionCollection.cs
- QuotedPrintableStream.cs
- SignatureHelper.cs
- __FastResourceComparer.cs
- SamlAuthorizationDecisionClaimResource.cs
- XamlSerializer.cs
- ElementUtil.cs
- PlatformCulture.cs
- FixedTextContainer.cs
- CodeDOMProvider.cs
- TlsnegoTokenProvider.cs
- ResXFileRef.cs
- WebReferencesBuildProvider.cs
- odbcmetadatacollectionnames.cs
- httpapplicationstate.cs
- ColumnResult.cs
- DiagnosticsConfigurationHandler.cs
- TimeSpanOrInfiniteConverter.cs
- FamilyMapCollection.cs
- RectAnimation.cs
- StringConverter.cs
- TcpChannelFactory.cs
- BoundField.cs
- SoapConverter.cs
- BinaryReader.cs
- CodeRemoveEventStatement.cs
- InvokeProviderWrapper.cs
- WpfGeneratedKnownTypes.cs
- Mutex.cs
- CollectionChangeEventArgs.cs
- URLEditor.cs
- SymbolDocumentInfo.cs
- HttpCacheParams.cs
- RenderCapability.cs
- XmlILOptimizerVisitor.cs
- IdentityNotMappedException.cs
- RelationshipConstraintValidator.cs
- CodeVariableDeclarationStatement.cs
- ExtentKey.cs
- TypeEnumerableViewSchema.cs
- OdbcStatementHandle.cs
- TextSerializer.cs
- AuthenticateEventArgs.cs
- WebPartAddingEventArgs.cs
- PrivilegedConfigurationManager.cs
- TextControlDesigner.cs
- DataGridViewLinkCell.cs
- DictionarySectionHandler.cs