Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / whidbey / NetFXspW7 / 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
- SQLDecimalStorage.cs
- FontStyles.cs
- HttpServerVarsCollection.cs
- PublishLicense.cs
- PropertyDescriptorCollection.cs
- DataTable.cs
- Typeface.cs
- StringComparer.cs
- AuthorizationRuleCollection.cs
- OptimizedTemplateContent.cs
- OracleException.cs
- DaylightTime.cs
- ForwardPositionQuery.cs
- FileFormatException.cs
- TypedDatasetGenerator.cs
- StreamUpgradeBindingElement.cs
- SamlAction.cs
- OutputCacheModule.cs
- AliasGenerator.cs
- ResourceDescriptionAttribute.cs
- Tuple.cs
- DataServiceQuery.cs
- VectorCollectionValueSerializer.cs
- UnionCodeGroup.cs
- OptimalTextSource.cs
- ErrorFormatter.cs
- DataKeyPropertyAttribute.cs
- Size.cs
- StylusButtonEventArgs.cs
- CustomErrorsSectionWrapper.cs
- EventItfInfo.cs
- coordinatorscratchpad.cs
- IndependentAnimationStorage.cs
- XmlBufferReader.cs
- SqlNodeAnnotation.cs
- ProfileProvider.cs
- WizardPanel.cs
- SafeMILHandle.cs
- ComponentConverter.cs
- _ShellExpression.cs
- SiteMapNode.cs
- DataTrigger.cs
- SelectedCellsCollection.cs
- XmlBinaryWriter.cs
- WsatConfiguration.cs
- InputManager.cs
- HttpCookiesSection.cs
- MsmqMessageSerializationFormat.cs
- DynamicEntity.cs
- KeyEventArgs.cs
- MediaElement.cs
- DBSchemaTable.cs
- NumberFormatInfo.cs
- SetIterators.cs
- ProcessHostFactoryHelper.cs
- ProxyGenerator.cs
- FieldDescriptor.cs
- ProfilePropertyMetadata.cs
- UserControlCodeDomTreeGenerator.cs
- WasEndpointConfigContainer.cs
- ConsoleCancelEventArgs.cs
- RtfNavigator.cs
- AudioFormatConverter.cs
- SrgsNameValueTag.cs
- NetworkInformationPermission.cs
- ActivityInfo.cs
- StatusBarItem.cs
- SolidColorBrush.cs
- SchemaElementLookUpTable.cs
- TrackingStringDictionary.cs
- ToolStripDropDown.cs
- WindowsRebar.cs
- ProxyWebPartConnectionCollection.cs
- SafeHandles.cs
- HtmlAnchor.cs
- OdbcEnvironmentHandle.cs
- ClientApiGenerator.cs
- ListBindingConverter.cs
- DispatcherSynchronizationContext.cs
- DataRowView.cs
- ResXResourceReader.cs
- LinkClickEvent.cs
- ExecutionProperties.cs
- WeakReference.cs
- Panel.cs
- WorkflowEventArgs.cs
- EmbeddedMailObject.cs
- FixedSOMPageConstructor.cs
- ArrayEditor.cs
- PermissionToken.cs
- Model3D.cs
- RowToParametersTransformer.cs
- TextServicesPropertyRanges.cs
- MultipleCopiesCollection.cs
- COAUTHINFO.cs
- Frame.cs
- StateMachineWorkflowInstance.cs
- PanelStyle.cs
- ListViewInsertionMark.cs
- FormViewPageEventArgs.cs