Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / whidbey / NetFXspW7 / 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. //------------------------------------------------------------------------------ //// 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
- RegexWriter.cs
- SimpleWorkerRequest.cs
- EntityDataSourceView.cs
- LineSegment.cs
- HtmlLink.cs
- MetafileHeaderWmf.cs
- DependencyObjectType.cs
- KnownBoxes.cs
- SemanticAnalyzer.cs
- BooleanAnimationBase.cs
- EventDescriptor.cs
- MatrixCamera.cs
- TreeNodeMouseHoverEvent.cs
- RuntimeHandles.cs
- GlyphRun.cs
- ToolStripGripRenderEventArgs.cs
- ResourceBinder.cs
- XamlBrushSerializer.cs
- ComponentSerializationService.cs
- Translator.cs
- SqlRetyper.cs
- XmlSchemaAll.cs
- ValidationContext.cs
- FrameworkTemplate.cs
- OptimalTextSource.cs
- BaseConfigurationRecord.cs
- IntellisenseTextBox.designer.cs
- RegexGroup.cs
- CorrelationHandle.cs
- TypeViewSchema.cs
- ToolStripDropTargetManager.cs
- GridEntry.cs
- OrderByQueryOptionExpression.cs
- OlePropertyStructs.cs
- Error.cs
- KeyTime.cs
- GrowingArray.cs
- RotateTransform.cs
- FileInfo.cs
- TypeSystem.cs
- RectValueSerializer.cs
- DirectoryObjectSecurity.cs
- FormatSettings.cs
- MediaPlayerState.cs
- SignatureToken.cs
- EventManager.cs
- Region.cs
- XPathDocumentNavigator.cs
- FacetChecker.cs
- XamlStyleSerializer.cs
- BitmapMetadataEnumerator.cs
- Condition.cs
- ForwardPositionQuery.cs
- PreApplicationStartMethodAttribute.cs
- CancellationToken.cs
- AuthenticatedStream.cs
- SchemaObjectWriter.cs
- ConnectionPoolManager.cs
- HttpListener.cs
- RtfFormatStack.cs
- ProxyWebPart.cs
- UIElement3DAutomationPeer.cs
- BulletChrome.cs
- Propagator.JoinPropagator.JoinPredicateVisitor.cs
- DocumentAutomationPeer.cs
- CompilationUtil.cs
- SecurityNegotiationException.cs
- SoapSchemaMember.cs
- FormViewPagerRow.cs
- HotSpot.cs
- StateMachineDesignerPaint.cs
- TextServicesProperty.cs
- DispatcherSynchronizationContext.cs
- ConditionCollection.cs
- PolicyManager.cs
- PageSettings.cs
- RTTrackingProfile.cs
- IApplicationTrustManager.cs
- LambdaCompiler.Address.cs
- DataGridItemCollection.cs
- TextBlock.cs
- TextTreeDeleteContentUndoUnit.cs
- ParameterExpression.cs
- _BaseOverlappedAsyncResult.cs
- _DigestClient.cs
- NavigationPropertyEmitter.cs
- TemplateControlParser.cs
- XamlTemplateSerializer.cs
- EntitySqlQueryBuilder.cs
- Compiler.cs
- HttpPostClientProtocol.cs
- IPEndPointCollection.cs
- Overlapped.cs
- CompositeTypefaceMetrics.cs
- XmlNodeReader.cs
- ObjectDataSourceView.cs
- BadImageFormatException.cs
- ContentValidator.cs
- ExpressionBinding.cs
- ServiceMetadataPublishingElement.cs