Code:
/ DotNET / DotNET / 8.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
- XmlObjectSerializer.cs
- CodeMemberEvent.cs
- AssemblyContextControlItem.cs
- SemanticBasicElement.cs
- BorderSidesEditor.cs
- future.cs
- WizardSideBarListControlItem.cs
- SocketPermission.cs
- MyContact.cs
- SectionInput.cs
- NullableIntAverageAggregationOperator.cs
- COMException.cs
- UshortList2.cs
- login.cs
- EditorZoneAutoFormat.cs
- DataGridAutoGeneratingColumnEventArgs.cs
- WebBrowserBase.cs
- OdbcEnvironment.cs
- StoryFragments.cs
- XmlDocumentSerializer.cs
- ComEventsMethod.cs
- ModelMemberCollection.cs
- PersonalizationStateInfo.cs
- CompilerHelpers.cs
- RuleSetCollection.cs
- HighlightVisual.cs
- HighContrastHelper.cs
- OdbcEnvironmentHandle.cs
- MenuCommand.cs
- GenericUriParser.cs
- RelationshipManager.cs
- ScrollPattern.cs
- ExceptionUtil.cs
- MessageEventSubscriptionService.cs
- DelimitedListTraceListener.cs
- RemotingConfiguration.cs
- CodeGen.cs
- ProfileServiceManager.cs
- DocumentAutomationPeer.cs
- DetailsViewPageEventArgs.cs
- FixUp.cs
- SystemTcpConnection.cs
- DataRowCollection.cs
- PropertyValueUIItem.cs
- CodeCommentStatementCollection.cs
- SurrogateDataContract.cs
- WebEventCodes.cs
- TabPanel.cs
- ItemCheckEvent.cs
- XmlResolver.cs
- CornerRadius.cs
- BlurBitmapEffect.cs
- CanExecuteRoutedEventArgs.cs
- RadioButtonPopupAdapter.cs
- Stacktrace.cs
- CollectionDataContract.cs
- ArrayTypeMismatchException.cs
- StaticFileHandler.cs
- CodeAccessPermission.cs
- CopyOnWriteList.cs
- ExpressionVisitorHelpers.cs
- CodeDelegateInvokeExpression.cs
- SymLanguageVendor.cs
- HtmlDocument.cs
- SizeFConverter.cs
- ConfigXmlComment.cs
- Control.cs
- Single.cs
- initElementDictionary.cs
- ReadOnlyDictionary.cs
- DataGridViewTextBoxColumn.cs
- DataBindEngine.cs
- XPathDescendantIterator.cs
- AppDomainManager.cs
- RelationHandler.cs
- RelatedEnd.cs
- DropDownList.cs
- ParameterRetriever.cs
- ComplexTypeEmitter.cs
- InstancePersistenceContext.cs
- shaperfactory.cs
- DataControlCommands.cs
- AuthorizationRule.cs
- EdmFunction.cs
- ExceptionRoutedEventArgs.cs
- PropertyKey.cs
- DataQuery.cs
- ApplicationSettingsBase.cs
- BrowserCapabilitiesCompiler.cs
- BasicAsyncResult.cs
- Route.cs
- AssemblyUtil.cs
- TemplatePartAttribute.cs
- ProfileEventArgs.cs
- RuleSettingsCollection.cs
- AutomationProperties.cs
- SmiMetaDataProperty.cs
- PageBuildProvider.cs
- DataGridViewDataErrorEventArgs.cs
- ItemAutomationPeer.cs