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 / SQLTypes / SqlCharStream.cs / 1 / SqlCharStream.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //junfang //[....] //[....] //----------------------------------------------------------------------------- //************************************************************************* // @File: SqlStreamChars.cs // // Create by: JunFang // // Description: // // Notes: // // History: // // 04/17/01 JunFang Created. // // @EndHeader@ //************************************************************************* namespace System.Data.SqlTypes { using System; using System.IO; using System.Runtime.InteropServices; using System.Data.SqlTypes; #if WINFSInternalOnly public #else internal #endif abstract class SqlStreamChars: System.Data.SqlTypes.INullable, IDisposable { public abstract bool IsNull { get; } public abstract bool CanRead { get; } public abstract bool CanSeek { get; } public abstract bool CanWrite { get; } public abstract long Length { get; } public abstract long Position { get; set; } // -------------------------------------------------------------- // Public methods // ------------------------------------------------------------- public abstract int Read (char[] buffer, int offset, int count); public abstract void Write (char[] buffer, int offset, int count); public abstract long Seek (long offset, SeekOrigin origin); public abstract void SetLength (long value); public abstract void Flush (); public virtual void Close(){ Dispose(true); } void IDisposable.Dispose() { Dispose(true); } protected virtual void Dispose(bool disposing) { } public virtual int ReadChar() { // Reads one char from the stream by calling Read(char[], int, int). // Will return an char cast to an int or -1 on end of stream. // The performance of the default implementation on Stream is bad, // and any subclass with an internal buffer should override this method. char[] oneCharArray = new char[1]; int r = Read(oneCharArray, 0, 1); if (r==0) return -1; return oneCharArray[0]; } public virtual void WriteChar(char value) { // Writes one char from the stream by calling Write(char[], int, int). // The performance of the default implementation on Stream is bad, // and any subclass with an internal buffer should override this method. char[] oneCharArray = new char[1]; oneCharArray[0] = value; Write(oneCharArray, 0, 1); } // Private class: the Null SqlStreamChars private class NullSqlStreamChars : SqlStreamChars { // -------------------------------------------------------------- // Constructor(s) // -------------------------------------------------------------- internal NullSqlStreamChars() { } // ------------------------------------------------------------- // Public properties // -------------------------------------------------------------- public override bool IsNull { get { return true; } } public override bool CanRead { get { return false; } } public override bool CanSeek { get { return false; } } public override bool CanWrite { get { return false; } } public override long Length { get { throw new SqlNullValueException(); } } public override long Position { get { throw new SqlNullValueException(); } set { throw new SqlNullValueException(); } } // ------------------------------------------------------------- // Public methods // ------------------------------------------------------------- public override int Read (char[] buffer, int offset, int count) { throw new SqlNullValueException(); } public override void Write (char[] buffer, int offset, int count) { throw new SqlNullValueException(); } public override long Seek (long offset, SeekOrigin origin) { throw new SqlNullValueException(); } public override void SetLength (long value) { throw new SqlNullValueException(); } public override void Flush () { throw new SqlNullValueException(); } public override void Close () { } } // class NullSqlStreamChars // The Null instance public static SqlStreamChars Null { get { return new NullSqlStreamChars(); } } } // class SqlStreamChars } // namespace System.Data.SqlTypes // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //junfang //[....] //[....] //----------------------------------------------------------------------------- //************************************************************************* // @File: SqlStreamChars.cs // // Create by: JunFang // // Description: // // Notes: // // History: // // 04/17/01 JunFang Created. // // @EndHeader@ //************************************************************************* namespace System.Data.SqlTypes { using System; using System.IO; using System.Runtime.InteropServices; using System.Data.SqlTypes; #if WINFSInternalOnly public #else internal #endif abstract class SqlStreamChars: System.Data.SqlTypes.INullable, IDisposable { public abstract bool IsNull { get; } public abstract bool CanRead { get; } public abstract bool CanSeek { get; } public abstract bool CanWrite { get; } public abstract long Length { get; } public abstract long Position { get; set; } // -------------------------------------------------------------- // Public methods // ------------------------------------------------------------- public abstract int Read (char[] buffer, int offset, int count); public abstract void Write (char[] buffer, int offset, int count); public abstract long Seek (long offset, SeekOrigin origin); public abstract void SetLength (long value); public abstract void Flush (); public virtual void Close(){ Dispose(true); } void IDisposable.Dispose() { Dispose(true); } protected virtual void Dispose(bool disposing) { } public virtual int ReadChar() { // Reads one char from the stream by calling Read(char[], int, int). // Will return an char cast to an int or -1 on end of stream. // The performance of the default implementation on Stream is bad, // and any subclass with an internal buffer should override this method. char[] oneCharArray = new char[1]; int r = Read(oneCharArray, 0, 1); if (r==0) return -1; return oneCharArray[0]; } public virtual void WriteChar(char value) { // Writes one char from the stream by calling Write(char[], int, int). // The performance of the default implementation on Stream is bad, // and any subclass with an internal buffer should override this method. char[] oneCharArray = new char[1]; oneCharArray[0] = value; Write(oneCharArray, 0, 1); } // Private class: the Null SqlStreamChars private class NullSqlStreamChars : SqlStreamChars { // -------------------------------------------------------------- // Constructor(s) // -------------------------------------------------------------- internal NullSqlStreamChars() { } // ------------------------------------------------------------- // Public properties // -------------------------------------------------------------- public override bool IsNull { get { return true; } } public override bool CanRead { get { return false; } } public override bool CanSeek { get { return false; } } public override bool CanWrite { get { return false; } } public override long Length { get { throw new SqlNullValueException(); } } public override long Position { get { throw new SqlNullValueException(); } set { throw new SqlNullValueException(); } } // ------------------------------------------------------------- // Public methods // ------------------------------------------------------------- public override int Read (char[] buffer, int offset, int count) { throw new SqlNullValueException(); } public override void Write (char[] buffer, int offset, int count) { throw new SqlNullValueException(); } public override long Seek (long offset, SeekOrigin origin) { throw new SqlNullValueException(); } public override void SetLength (long value) { throw new SqlNullValueException(); } public override void Flush () { throw new SqlNullValueException(); } public override void Close () { } } // class NullSqlStreamChars // The Null instance public static SqlStreamChars Null { get { return new NullSqlStreamChars(); } } } // class SqlStreamChars } // namespace System.Data.SqlTypes // File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- DataGridViewColumn.cs
- MessageQueueException.cs
- ProxyManager.cs
- ExpressionBinding.cs
- RequestTimeoutManager.cs
- mediaeventargs.cs
- odbcmetadatacollectionnames.cs
- TableItemStyle.cs
- OleServicesContext.cs
- EntityDataSourceState.cs
- XmlSchemaSubstitutionGroup.cs
- RuleDefinitions.cs
- DataGridViewHitTestInfo.cs
- BatchParser.cs
- Conditional.cs
- AuthenticationSection.cs
- CacheChildrenQuery.cs
- UriTemplateEquivalenceComparer.cs
- BmpBitmapEncoder.cs
- XmlCodeExporter.cs
- BigInt.cs
- MachineKeyValidationConverter.cs
- EncryptionUtility.cs
- ShaperBuffers.cs
- BamlCollectionHolder.cs
- EllipseGeometry.cs
- AsymmetricAlgorithm.cs
- cache.cs
- ShaperBuffers.cs
- BaseDataListDesigner.cs
- SmtpSpecifiedPickupDirectoryElement.cs
- MetabaseReader.cs
- File.cs
- CodePropertyReferenceExpression.cs
- TrackingStringDictionary.cs
- NumericExpr.cs
- ChangePasswordDesigner.cs
- DataBindingCollection.cs
- Zone.cs
- OleDbWrapper.cs
- TagMapInfo.cs
- URLIdentityPermission.cs
- PhotoPrintingIntent.cs
- DbConnectionPoolOptions.cs
- Fonts.cs
- MeshGeometry3D.cs
- NonVisualControlAttribute.cs
- TreeViewImageIndexConverter.cs
- HtmlTitle.cs
- SignHashRequest.cs
- SystemException.cs
- DataGridViewSelectedRowCollection.cs
- ADMembershipProvider.cs
- TemplateXamlTreeBuilder.cs
- FormViewDeletedEventArgs.cs
- ClockGroup.cs
- SmtpNetworkElement.cs
- Win32PrintDialog.cs
- XmlSchemaAnyAttribute.cs
- FileLoadException.cs
- IdnMapping.cs
- LowerCaseStringConverter.cs
- WaitForChangedResult.cs
- SynchronizationLockException.cs
- HMACMD5.cs
- SQLBytes.cs
- UnsafeNetInfoNativeMethods.cs
- NameScopePropertyAttribute.cs
- ConversionValidationRule.cs
- ThreadStaticAttribute.cs
- DrawingGroup.cs
- CompositionTarget.cs
- EnterpriseServicesHelper.cs
- DependencyPropertyKind.cs
- StringReader.cs
- StylusButton.cs
- HttpWriter.cs
- ForceCopyBuildProvider.cs
- FileChangesMonitor.cs
- AdornerHitTestResult.cs
- XmlCustomFormatter.cs
- ChangeTracker.cs
- IResourceProvider.cs
- UpdatePanelTriggerCollection.cs
- GeneralTransform3D.cs
- TextTreeText.cs
- SHA1Managed.cs
- XmlWriterTraceListener.cs
- NullableBoolConverter.cs
- TextElementCollection.cs
- PlaceHolder.cs
- ServiceNameElementCollection.cs
- XMLSchema.cs
- WrapPanel.cs
- FileClassifier.cs
- BasicCellRelation.cs
- FontFamily.cs
- PathBox.cs
- NoResizeSelectionBorderGlyph.cs
- TagMapInfo.cs