I am trying to register multiple database in an Enterprise Library 5 container. I am able to register one but unable to register a second. Can anybody tell me what I am doing wrong in the code snippet below? If I uncomment the commented out section then an error is returned saying 'An item with the same key has already been added.'
I have checked various threads but have been unable to find an answer. https://entlib.codeplex.com/discussions/401337 http://entlib.codeplex.com/discussions/539775
What is the correct\preferred method for adding multiple registries to the container? Any answers in VB or C# would be appreciated.
Private Sub RegisterDatabase()
Dim _connectionString as string = "ConnectionString"
Dim _connectionString2 as string = "ConnectionString2"
Dim builder = New ConfigurationSourceBuilder
builder.ConfigureData().ForDatabaseNamed(_databaseName). _
ThatIs.AnOracleDatabase().WithConnectionString(_connectionString)
'####################################################################
'Code works fine with this section commented out.
'If it's added back in, then it errors with 'An item with the same key has already been added.'
'builder.ConfigureData().ForDatabaseNamed("APPLICATION"). _
' ThatIs.AnOracleDatabase().WithConnectionString(_connectionString2).AsDefault()
'####################################################################
Dim configSource = New DictionaryConfigurationSource
builder.UpdateConfigurationWithReplace(configSource)
Dim container As IUnityContainer
container = New UnityContainer()
container.AddNewExtension(Of EnterpriseLibraryCoreExtension)()
Dim configurator As New UnityContainerConfigurator(container)
EnterpriseLibraryContainer.ConfigureContainer(configurator, configSource)
EnterpriseLibraryContainer.Current = New UnityServiceLocator(container)
End Sub