Code:
/ FX-1434 / FX-1434 / 1.0 / untmp / whidbey / REDBITS / ndp / fx / src / Data / Microsoft / SqlServer / Server / SmiSettersStream.cs / 1 / SmiSettersStream.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //[....] //[....] //----------------------------------------------------------------------------- namespace Microsoft.SqlServer.Server { using System; using System.Data.Common; using System.Data.SqlClient; using System.Diagnostics; using System.IO; internal class SmiSettersStream : Stream { private SmiEventSink_Default _sink; private ITypedSettersV3 _setters; private int _ordinal; private long _lengthWritten; private SmiMetaData _metaData; internal SmiSettersStream( SmiEventSink_Default sink, ITypedSettersV3 setters, int ordinal, SmiMetaData metaData ) { Debug.Assert( null != sink ); Debug.Assert( null != setters ); Debug.Assert( 0 <= ordinal ); Debug.Assert( null != metaData ); _sink = sink; _setters = setters; _ordinal = ordinal; _lengthWritten = 0; _metaData = metaData; } public override bool CanRead { get { return false; } } // If CanSeek is false, Position, Seek, Length, and SetLength should throw. public override bool CanSeek { get { return false; } } public override bool CanWrite { get { return true; } } public override long Length { get { return _lengthWritten; } } public override long Position { get { return _lengthWritten; } set { throw SQL.StreamSeekNotSupported(); } } public override void Flush() { _lengthWritten = ValueUtilsSmi.SetBytesLength(_sink, _setters, _ordinal, _metaData, _lengthWritten); } public override long Seek(long offset, SeekOrigin origin) { throw SQL.StreamSeekNotSupported(); } public override void SetLength(long value) { if ( value < 0 ) { throw ADP.ArgumentOutOfRange("value"); } ValueUtilsSmi.SetBytesLength(_sink, _setters, _ordinal, _metaData, value); } public override int Read(byte[] buffer, int offset, int count) { throw SQL.StreamReadNotSupported(); } public override void Write(byte[] buffer, int offset, int count) { _lengthWritten += ValueUtilsSmi.SetBytes(_sink, _setters, _ordinal, _metaData, _lengthWritten, buffer, offset, count); } } } // 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
- ImageList.cs
- TypedRowGenerator.cs
- ApplicationGesture.cs
- TextEditor.cs
- InternalDuplexBindingElement.cs
- XmlReflectionMember.cs
- ProviderConnectionPoint.cs
- WindowsScroll.cs
- GroupDescription.cs
- DisplayNameAttribute.cs
- XmlSchemaCollection.cs
- DataGridColumnStyleMappingNameEditor.cs
- DataGridViewTopLeftHeaderCell.cs
- EntityDataSourceSelectingEventArgs.cs
- ScriptResourceHandler.cs
- HiddenFieldPageStatePersister.cs
- SmiContext.cs
- TraceXPathNavigator.cs
- Contracts.cs
- Win32.cs
- SourceSwitch.cs
- ItemsControl.cs
- AstNode.cs
- XmlDesignerDataSourceView.cs
- IPCCacheManager.cs
- BoundsDrawingContextWalker.cs
- ToolStripOverflowButton.cs
- ScriptComponentDescriptor.cs
- TreeNodeBinding.cs
- EmptyCollection.cs
- Normalizer.cs
- XmlSchemaSimpleTypeUnion.cs
- WebPartConnectionsEventArgs.cs
- ChannelCredentials.cs
- DataMember.cs
- SqlBooleanMismatchVisitor.cs
- oledbconnectionstring.cs
- DocumentApplicationJournalEntryEventArgs.cs
- IntPtr.cs
- Function.cs
- RsaSecurityKey.cs
- WindowsListView.cs
- RowTypeElement.cs
- ExpressionParser.cs
- ToolStripScrollButton.cs
- Page.cs
- ConstructorBuilder.cs
- ValueChangedEventManager.cs
- PaintValueEventArgs.cs
- MethodCallTranslator.cs
- CustomAttributeBuilder.cs
- precedingquery.cs
- TreeNodeEventArgs.cs
- AssemblyName.cs
- UnaryQueryOperator.cs
- DiscoveryDocumentReference.cs
- SupportsEventValidationAttribute.cs
- FixedDocumentSequencePaginator.cs
- ConfigurationManagerHelper.cs
- CacheModeValueSerializer.cs
- RequestCacheValidator.cs
- ApplicationServicesHostFactory.cs
- Button.cs
- LoginCancelEventArgs.cs
- SchemaImporterExtension.cs
- WebMessageEncodingElement.cs
- smtpconnection.cs
- StringUtil.cs
- InternalMappingException.cs
- CaseInsensitiveHashCodeProvider.cs
- Timer.cs
- DecimalKeyFrameCollection.cs
- CalendarAutomationPeer.cs
- StreamAsIStream.cs
- ILGenerator.cs
- ColorPalette.cs
- FigureHelper.cs
- ByteStack.cs
- DesignerLabelAdapter.cs
- DataGridPagerStyle.cs
- PackageStore.cs
- SqlHelper.cs
- Match.cs
- EdmFunction.cs
- XmlSchemas.cs
- QuotedPrintableStream.cs
- UnionExpr.cs
- ActivityTypeDesigner.xaml.cs
- SrgsDocumentParser.cs
- LinqDataSourceContextData.cs
- XmlRawWriterWrapper.cs
- Utilities.cs
- HitTestParameters.cs
- RegexStringValidatorAttribute.cs
- TextBox.cs
- UnsafeNativeMethodsCLR.cs
- QueueProcessor.cs
- OverflowException.cs
- HwndSourceParameters.cs
- XamlWriter.cs