Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / DataWebControlsDesign / System / Data / WebControls / Design / EntityConnectionStringBuilderItem.cs / 1305376 / EntityConnectionStringBuilderItem.cs
//------------------------------------------------------------------------------
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
//
// @owner [....]
// @backupOwner [....]
//-----------------------------------------------------------------------------
using System.Data.EntityClient;
using System.Diagnostics;
namespace System.Web.UI.Design.WebControls
{
internal class EntityConnectionStringBuilderItem : IComparable
{
// Only one of the following should be set. This is enforced through the constructors and the fact that these fields are readonly.
private readonly EntityConnectionStringBuilder _connectionStringBuilder;
private readonly string _unknownConnectionString; // used when the string cannot be loaded into a connection string builder or is missing some required keywords
internal EntityConnectionStringBuilderItem(EntityConnectionStringBuilder connectionStringBuilder)
{
// empty connection string builder is allowed, but not null
Debug.Assert(connectionStringBuilder != null, "null connectionStringBuilder");
_connectionStringBuilder = connectionStringBuilder;
}
internal EntityConnectionStringBuilderItem(string unknownConnectionString)
{
// empty is not allowed -- use the constructor that takes a builder if the string is empty
Debug.Assert(!String.IsNullOrEmpty(unknownConnectionString), "null or empty unknownConnectionString");
_unknownConnectionString = unknownConnectionString;
}
internal string ConnectionString
{
get
{
if (_connectionStringBuilder != null)
{
return _connectionStringBuilder.ConnectionString;
}
else
{
return _unknownConnectionString;
}
}
}
internal EntityConnectionStringBuilder EntityConnectionStringBuilder
{
get
{
return _connectionStringBuilder;
}
}
internal bool IsEmpty
{
get
{
return String.IsNullOrEmpty(this.ConnectionString);
}
}
internal bool IsNamedConnection
{
get
{
if (_connectionStringBuilder != null)
{
return !String.IsNullOrEmpty(_connectionStringBuilder.Name);
}
else
{
// if the connection string is not recognized by a EntityConnectionStringBuilder, it can't be a valid named connection
return false;
}
}
}
public override string ToString()
{
// Display just the name for named connections, but the full connection string otherwise
if (_connectionStringBuilder != null)
{
if (!String.IsNullOrEmpty(_connectionStringBuilder.Name))
{
return _connectionStringBuilder.Name;
}
else
{
return _connectionStringBuilder.ConnectionString;
}
}
else
{
return _unknownConnectionString;
}
}
int IComparable.CompareTo(EntityConnectionStringBuilderItem other)
{
return (String.Compare(this.ToString(), other.ToString(), StringComparison.OrdinalIgnoreCase));
}
}
}
// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
//------------------------------------------------------------------------------
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
//
// @owner [....]
// @backupOwner [....]
//-----------------------------------------------------------------------------
using System.Data.EntityClient;
using System.Diagnostics;
namespace System.Web.UI.Design.WebControls
{
internal class EntityConnectionStringBuilderItem : IComparable
{
// Only one of the following should be set. This is enforced through the constructors and the fact that these fields are readonly.
private readonly EntityConnectionStringBuilder _connectionStringBuilder;
private readonly string _unknownConnectionString; // used when the string cannot be loaded into a connection string builder or is missing some required keywords
internal EntityConnectionStringBuilderItem(EntityConnectionStringBuilder connectionStringBuilder)
{
// empty connection string builder is allowed, but not null
Debug.Assert(connectionStringBuilder != null, "null connectionStringBuilder");
_connectionStringBuilder = connectionStringBuilder;
}
internal EntityConnectionStringBuilderItem(string unknownConnectionString)
{
// empty is not allowed -- use the constructor that takes a builder if the string is empty
Debug.Assert(!String.IsNullOrEmpty(unknownConnectionString), "null or empty unknownConnectionString");
_unknownConnectionString = unknownConnectionString;
}
internal string ConnectionString
{
get
{
if (_connectionStringBuilder != null)
{
return _connectionStringBuilder.ConnectionString;
}
else
{
return _unknownConnectionString;
}
}
}
internal EntityConnectionStringBuilder EntityConnectionStringBuilder
{
get
{
return _connectionStringBuilder;
}
}
internal bool IsEmpty
{
get
{
return String.IsNullOrEmpty(this.ConnectionString);
}
}
internal bool IsNamedConnection
{
get
{
if (_connectionStringBuilder != null)
{
return !String.IsNullOrEmpty(_connectionStringBuilder.Name);
}
else
{
// if the connection string is not recognized by a EntityConnectionStringBuilder, it can't be a valid named connection
return false;
}
}
}
public override string ToString()
{
// Display just the name for named connections, but the full connection string otherwise
if (_connectionStringBuilder != null)
{
if (!String.IsNullOrEmpty(_connectionStringBuilder.Name))
{
return _connectionStringBuilder.Name;
}
else
{
return _connectionStringBuilder.ConnectionString;
}
}
else
{
return _unknownConnectionString;
}
}
int IComparable.CompareTo(EntityConnectionStringBuilderItem other)
{
return (String.Compare(this.ToString(), other.ToString(), StringComparison.OrdinalIgnoreCase));
}
}
}
// 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
- RelationshipDetailsCollection.cs
- XmlSchemaSequence.cs
- WindowsPen.cs
- PreviewPageInfo.cs
- EntityClassGenerator.cs
- TreeNodeCollection.cs
- StdValidatorsAndConverters.cs
- RowUpdatedEventArgs.cs
- Compress.cs
- XsltSettings.cs
- DbReferenceCollection.cs
- PixelFormat.cs
- RuntimeTransactionHandle.cs
- PropertyMetadata.cs
- DataBinder.cs
- ModuleConfigurationInfo.cs
- SerializationEventsCache.cs
- SQLMembershipProvider.cs
- ResXResourceReader.cs
- SRDisplayNameAttribute.cs
- FormsAuthentication.cs
- PreservationFileWriter.cs
- PrimitiveSchema.cs
- CollectionBuilder.cs
- WinEventTracker.cs
- URLAttribute.cs
- ExpanderAutomationPeer.cs
- CodeNamespaceImportCollection.cs
- SiteMapDataSource.cs
- Range.cs
- DesignerEventService.cs
- AttachedPropertyBrowsableAttribute.cs
- MemoryPressure.cs
- OleDbException.cs
- ExportOptions.cs
- XmlSchema.cs
- returneventsaver.cs
- TextRangeProviderWrapper.cs
- querybuilder.cs
- JoinElimination.cs
- DebugHandleTracker.cs
- PrefixQName.cs
- ComponentEditorForm.cs
- DesignerCommandAdapter.cs
- InternalResources.cs
- CSharpCodeProvider.cs
- WindowHideOrCloseTracker.cs
- ElementHost.cs
- OracleParameterBinding.cs
- InternalConfigEventArgs.cs
- SqlDataReaderSmi.cs
- WinFormsComponentEditor.cs
- CompressionTransform.cs
- ColumnResizeUndoUnit.cs
- ClientRolePrincipal.cs
- Listbox.cs
- UniqueIdentifierService.cs
- QuaternionAnimation.cs
- AsyncResult.cs
- CompleteWizardStep.cs
- LookupBindingPropertiesAttribute.cs
- DbParameterCollectionHelper.cs
- OdbcReferenceCollection.cs
- CannotUnloadAppDomainException.cs
- TimeSpanMinutesConverter.cs
- ToolStripItemEventArgs.cs
- SafeBitVector32.cs
- WebPartConnectionsCancelVerb.cs
- EntityDataSourceChangedEventArgs.cs
- SafeRightsManagementQueryHandle.cs
- Dispatcher.cs
- ListComponentEditorPage.cs
- WindowsTooltip.cs
- SqlResolver.cs
- DialogDivider.cs
- TableLayoutSettings.cs
- GAC.cs
- BufferAllocator.cs
- Serializer.cs
- DataRecord.cs
- StaticExtensionConverter.cs
- XmlHierarchicalDataSourceView.cs
- RegexWorker.cs
- DataControlButton.cs
- HtmlElementCollection.cs
- TextBoxLine.cs
- SelectionRangeConverter.cs
- Span.cs
- PolicyManager.cs
- SecurityHelper.cs
- TemplateXamlParser.cs
- PhysicalFontFamily.cs
- DataSet.cs
- HiddenField.cs
- ReadOnlyAttribute.cs
- PointCollectionValueSerializer.cs
- IfAction.cs
- RtfFormatStack.cs
- Calendar.cs
- TimelineGroup.cs