Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / whidbey / netfxsp / ndp / fx / src / DataOracleClient / System / Data / OracleClient / OracleEncoding.cs / 1 / OracleEncoding.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //[....] //----------------------------------------------------------------------------- namespace System.Data.OracleClient { using System; using System.Diagnostics; using System.Runtime.InteropServices; using System.Text; //--------------------------------------------------------------------- // OracleEncoding // // Implements an Encoding Scheme that works with Oracle's conversions // for the database character set. // sealed internal class OracleEncoding : Encoding { OracleInternalConnection _connection; internal OciHandle Handle { get { OciHandle ociHandle = _connection.SessionHandle; if (null == ociHandle || ociHandle.IsInvalid) { ociHandle = _connection.EnvironmentHandle; } return ociHandle; } } public OracleEncoding(OracleInternalConnection connection) : base() { _connection = connection; } public override int GetByteCount(char[] chars, int index, int count) { int byteCount = GetBytes(chars, index, count, null, 0); return byteCount; } public override int GetBytes(char[] chars, int charIndex, int charCount, byte[] bytes, int byteIndex) { OciHandle ociHandle = Handle; int byteCount = checked((int)ociHandle.GetBytes(chars, charIndex, unchecked((uint)charCount), bytes, byteIndex)); return byteCount; } public override int GetCharCount(byte[] bytes, int index, int count) { int charCount = GetChars(bytes, index, count, null, 0); return charCount; } public override int GetChars(byte[] bytes, int byteIndex, int byteCount, char[] chars, int charIndex) { OciHandle ociHandle = Handle; int charCount = checked((int)ociHandle.GetChars(bytes, byteIndex, unchecked((uint)byteCount), chars, charIndex)); return charCount; } public override int GetMaxByteCount(int charCount) { return checked (charCount * 4); } public override int GetMaxCharCount(int byteCount) { return byteCount; } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //[....] //----------------------------------------------------------------------------- namespace System.Data.OracleClient { using System; using System.Diagnostics; using System.Runtime.InteropServices; using System.Text; //--------------------------------------------------------------------- // OracleEncoding // // Implements an Encoding Scheme that works with Oracle's conversions // for the database character set. // sealed internal class OracleEncoding : Encoding { OracleInternalConnection _connection; internal OciHandle Handle { get { OciHandle ociHandle = _connection.SessionHandle; if (null == ociHandle || ociHandle.IsInvalid) { ociHandle = _connection.EnvironmentHandle; } return ociHandle; } } public OracleEncoding(OracleInternalConnection connection) : base() { _connection = connection; } public override int GetByteCount(char[] chars, int index, int count) { int byteCount = GetBytes(chars, index, count, null, 0); return byteCount; } public override int GetBytes(char[] chars, int charIndex, int charCount, byte[] bytes, int byteIndex) { OciHandle ociHandle = Handle; int byteCount = checked((int)ociHandle.GetBytes(chars, charIndex, unchecked((uint)charCount), bytes, byteIndex)); return byteCount; } public override int GetCharCount(byte[] bytes, int index, int count) { int charCount = GetChars(bytes, index, count, null, 0); return charCount; } public override int GetChars(byte[] bytes, int byteIndex, int byteCount, char[] chars, int charIndex) { OciHandle ociHandle = Handle; int charCount = checked((int)ociHandle.GetChars(bytes, byteIndex, unchecked((uint)byteCount), chars, charIndex)); return charCount; } public override int GetMaxByteCount(int charCount) { return checked (charCount * 4); } public override int GetMaxCharCount(int byteCount) { return byteCount; } } } // 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
- WindowsTokenRoleProvider.cs
- XamlClipboardData.cs
- GenericEnumConverter.cs
- TextParagraphView.cs
- ApplicationId.cs
- SurrogateDataContract.cs
- EndEvent.cs
- PropertyDescriptorCollection.cs
- SiteMapProvider.cs
- RijndaelManaged.cs
- AnimatedTypeHelpers.cs
- TextTreeUndo.cs
- PEFileEvidenceFactory.cs
- ByteFacetDescriptionElement.cs
- ValidateNames.cs
- ScriptReferenceBase.cs
- xmlsaver.cs
- MessageDecoder.cs
- DBConnection.cs
- ProcessHostFactoryHelper.cs
- Guid.cs
- ProtectedProviderSettings.cs
- VariableAction.cs
- HtmlEmptyTagControlBuilder.cs
- CfgParser.cs
- RoutedEvent.cs
- ResourceBinder.cs
- GenericPrincipal.cs
- WebRequestModuleElement.cs
- CaseInsensitiveHashCodeProvider.cs
- WebHttpDispatchOperationSelector.cs
- ComponentEditorPage.cs
- NameScope.cs
- HebrewNumber.cs
- ListBoxAutomationPeer.cs
- LayoutInformation.cs
- PropertyInfoSet.cs
- SQLStringStorage.cs
- CodeConditionStatement.cs
- TextBoxDesigner.cs
- JournalNavigationScope.cs
- cache.cs
- CapacityStreamGeometryContext.cs
- IsolatedStorageSecurityState.cs
- Converter.cs
- SEHException.cs
- TrackBar.cs
- ObjectAssociationEndMapping.cs
- CursorConverter.cs
- AnonymousIdentificationSection.cs
- ResourcePool.cs
- WindowsFont.cs
- StreamInfo.cs
- PerformanceCounterPermissionEntry.cs
- IsolatedStoragePermission.cs
- IntSecurity.cs
- WindowsButton.cs
- WrappedIUnknown.cs
- SubstitutionList.cs
- JavaScriptObjectDeserializer.cs
- OracleDataAdapter.cs
- CorrelationManager.cs
- CmsUtils.cs
- ObjectFullSpanRewriter.cs
- KerberosTicketHashIdentifierClause.cs
- DragDeltaEventArgs.cs
- PersistenceParticipant.cs
- XmlSchemaSequence.cs
- LinearQuaternionKeyFrame.cs
- TextElementCollectionHelper.cs
- ConsoleCancelEventArgs.cs
- HashCryptoHandle.cs
- IConvertible.cs
- ReadOnlyHierarchicalDataSource.cs
- AjaxFrameworkAssemblyAttribute.cs
- TraceEventCache.cs
- ComboBoxDesigner.cs
- DataKeyArray.cs
- SubpageParaClient.cs
- FontUnitConverter.cs
- ViewEventArgs.cs
- XPathDocumentNavigator.cs
- VersionPair.cs
- String.cs
- QuaternionRotation3D.cs
- QueryHandler.cs
- ListViewContainer.cs
- MenuItemAutomationPeer.cs
- BackStopAuthenticationModule.cs
- _DisconnectOverlappedAsyncResult.cs
- EventListenerClientSide.cs
- RepeaterItemEventArgs.cs
- ObjectContextServiceProvider.cs
- PasswordRecovery.cs
- WeakEventTable.cs
- HuffModule.cs
- RadioButton.cs
- EventArgs.cs
- StyleTypedPropertyAttribute.cs
- SchemaEntity.cs