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
- DataGridViewMethods.cs
- Logging.cs
- ImageCollectionEditor.cs
- COM2Properties.cs
- TypeSource.cs
- CodeAccessPermission.cs
- AppDomainAttributes.cs
- DataGridViewSelectedCellCollection.cs
- SimpleFieldTemplateUserControl.cs
- RadioButton.cs
- Transactions.cs
- AnimationLayer.cs
- Comparer.cs
- SspiSecurityTokenProvider.cs
- BaseValidator.cs
- SchemaObjectWriter.cs
- Point.cs
- ServicesUtilities.cs
- CapabilitiesUse.cs
- CommandConverter.cs
- DoWorkEventArgs.cs
- HwndHost.cs
- EncryptedPackage.cs
- FeatureSupport.cs
- DebugView.cs
- VirtualDirectoryMapping.cs
- DesignerDataColumn.cs
- DataGridViewComboBoxColumn.cs
- CodeSubDirectoriesCollection.cs
- DocComment.cs
- AssemblyFilter.cs
- WebPartEventArgs.cs
- Configuration.cs
- FastEncoderStatics.cs
- ImmComposition.cs
- HostAdapter.cs
- InfoCardConstants.cs
- CreateUserWizardStep.cs
- CrossSiteScriptingValidation.cs
- SynchronizationLockException.cs
- WindowExtensionMethods.cs
- FillErrorEventArgs.cs
- SmtpNetworkElement.cs
- FormDocumentDesigner.cs
- ExpressionPrefixAttribute.cs
- HttpDebugHandler.cs
- ExceptionUtil.cs
- SQLBoolean.cs
- XmlDictionaryReader.cs
- SiteMembershipCondition.cs
- TextRangeSerialization.cs
- KoreanLunisolarCalendar.cs
- MemoryMappedFileSecurity.cs
- CorrelationResolver.cs
- BitmapSizeOptions.cs
- WebServiceResponse.cs
- TracedNativeMethods.cs
- SqlConnectionHelper.cs
- BitmapInitialize.cs
- DesignerActionUIStateChangeEventArgs.cs
- Membership.cs
- DetectRunnableInstancesTask.cs
- basecomparevalidator.cs
- HttpRequestMessageProperty.cs
- ToolStripDropDownItem.cs
- DataGridClipboardCellContent.cs
- BehaviorEditorPart.cs
- Columns.cs
- CookieParameter.cs
- SlipBehavior.cs
- ProgressBar.cs
- ControlBindingsCollection.cs
- SizeAnimationBase.cs
- SQLResource.cs
- NegatedConstant.cs
- Viewport3DAutomationPeer.cs
- TimeIntervalCollection.cs
- GenericParameterDataContract.cs
- SHA256Managed.cs
- SqlServer2KCompatibilityCheck.cs
- SmiMetaData.cs
- WebHttpBindingCollectionElement.cs
- DataDocumentXPathNavigator.cs
- AttachedPropertyBrowsableForChildrenAttribute.cs
- QueryStringConverter.cs
- SocketInformation.cs
- TypeConverterMarkupExtension.cs
- CreateUserWizard.cs
- JavaScriptSerializer.cs
- NetworkAddressChange.cs
- DesignerAdapterUtil.cs
- EndpointAddressElementBase.cs
- LeaseManager.cs
- TagPrefixAttribute.cs
- DataContractSerializerOperationBehavior.cs
- FileLogRecordHeader.cs
- ReferencedType.cs
- CollectionConverter.cs
- RoleManagerSection.cs
- DocumentSequenceHighlightLayer.cs