Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / Data / System / Data / Odbc / OdbcConnectionString.cs / 1305376 / OdbcConnectionString.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //[....] //[....] //----------------------------------------------------------------------------- namespace System.Data.Odbc { using System; using System.Collections; using System.Data; using System.Data.Common; using System.Security; using System.Security.Permissions; using System.Text; internal sealed class OdbcConnectionString : DbConnectionOptions { // instances of this class are intended to be immutable, i.e readonly // used by pooling classes so it is much easier to verify correctness // when not worried about the class being modified during execution private static class KEY { internal const string SaveFile = "savefile"; } private readonly string _expandedConnectionString; internal OdbcConnectionString(string connectionString, bool validate) : base(connectionString, null, true) { if (!validate) { string filename = null; int position = 0; _expandedConnectionString = ExpandDataDirectories(ref filename, ref position); } if (validate || (null == _expandedConnectionString)) { // do not check string length if it was expanded because the final result may be shorter than the original if ((null != connectionString) && (ODBC32.MAX_CONNECTION_STRING_LENGTH < connectionString.Length)) { // MDAC 83536 throw ODBC.ConnectionStringTooLong(); } } } protected internal override System.Security.PermissionSet CreatePermissionSet() { System.Security.PermissionSet permissionSet; if (ContainsKey(KEY.SaveFile)) { permissionSet = new NamedPermissionSet("FullTrust"); } else { permissionSet = new System.Security.PermissionSet(System.Security.Permissions.PermissionState.None); permissionSet.AddPermission(new OdbcPermission(this)); } return permissionSet; } protected internal override string Expand() { if (null != _expandedConnectionString) { return _expandedConnectionString; } else { return base.Expand(); } } } } // 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
- ColorBuilder.cs
- ControllableStoryboardAction.cs
- NamedPipeTransportBindingElement.cs
- UniformGrid.cs
- FontNameConverter.cs
- WindowsFormsSynchronizationContext.cs
- ServiceContractListItem.cs
- ToolStripDropDownClosingEventArgs.cs
- ToolboxItemAttribute.cs
- BinaryNegotiation.cs
- CapiNative.cs
- DataGridrowEditEndingEventArgs.cs
- ModelUIElement3D.cs
- OrderPreservingSpoolingTask.cs
- BamlTreeMap.cs
- SqlDataAdapter.cs
- EntityDataSourceChangedEventArgs.cs
- FileDialogPermission.cs
- ToolStripScrollButton.cs
- ExceptionCollection.cs
- XmlSchemaSet.cs
- List.cs
- COM2IDispatchConverter.cs
- CodeCatchClauseCollection.cs
- RuntimeWrappedException.cs
- WCFServiceClientProxyGenerator.cs
- WebBrowserContainer.cs
- SwitchDesigner.xaml.cs
- XmlSchemaInfo.cs
- WindowsTooltip.cs
- ListViewDeleteEventArgs.cs
- StyleSelector.cs
- HotCommands.cs
- Main.cs
- CodeRemoveEventStatement.cs
- PenCursorManager.cs
- DbConnectionClosed.cs
- MessageQueueTransaction.cs
- ApplyTemplatesAction.cs
- MultiPropertyDescriptorGridEntry.cs
- MouseOverProperty.cs
- Repeater.cs
- EntityContainerAssociationSetEnd.cs
- FrameworkPropertyMetadata.cs
- DefaultTextStore.cs
- RequestTimeoutManager.cs
- PrintDialog.cs
- PersistChildrenAttribute.cs
- TabControl.cs
- PathFigureCollection.cs
- GenerateScriptTypeAttribute.cs
- DataAdapter.cs
- ItemsPresenter.cs
- DelegateArgumentValue.cs
- DesignerProperties.cs
- Helpers.cs
- _LocalDataStore.cs
- Type.cs
- DataServiceQueryOfT.cs
- NotConverter.cs
- SingleAnimation.cs
- HttpWriter.cs
- CodeGeneratorOptions.cs
- WebServiceEnumData.cs
- DesigntimeLicenseContextSerializer.cs
- PolyLineSegmentFigureLogic.cs
- FunctionParameter.cs
- ConfigurationManagerInternalFactory.cs
- XmlMembersMapping.cs
- RelatedView.cs
- Column.cs
- RemoteWebConfigurationHostStream.cs
- Debug.cs
- TextSchema.cs
- Marshal.cs
- TemplateControlCodeDomTreeGenerator.cs
- SelectionChangedEventArgs.cs
- StringBuilder.cs
- MouseButton.cs
- SerializationEventsCache.cs
- LocatorBase.cs
- _StreamFramer.cs
- DateTimeFormatInfo.cs
- TextEditorContextMenu.cs
- LogLogRecordHeader.cs
- SpellerError.cs
- ObjRef.cs
- EpmTargetTree.cs
- NamedPipeTransportManager.cs
- SmtpReplyReaderFactory.cs
- DesignerAttributeInfo.cs
- ListViewUpdateEventArgs.cs
- Pair.cs
- ScrollChangedEventArgs.cs
- RawUIStateInputReport.cs
- TableColumn.cs
- CaseCqlBlock.cs
- NavigationWindow.cs
- PKCS1MaskGenerationMethod.cs
- StructuralCache.cs