Что вы на самом деле делаете с конфигурацией, когда закончите с ней? Вы положили его в источник конфигурации и передали его в контейнер или в Entlib?
На первый взгляд, ваша конфигурация выглядит нормально, но это только строит граф объектов. Затем вам нужно что-то вроде этого:
dim configSource as new DictionaryConfigurationSource()
builder.UpdateConfigurationSourceWithReplace(configSource)
' To use container directly
dim container as IUnityContainer = new UnityContainer() _
.AddExtension(New EnterpriseLibraryCoreExtension(configSource))
' Or, to use Entlib static APIs
EnterpriseLibraryContainer.Current = EnterpriseLibrary.CreateDefaultContainer(configSource)
Это должно сделать это. Если это не так, пожалуйста, опубликуйте более подробный пример, и я, возможно, смогу отладить его для вас.
UPDATE
Следующий пример отлично работает для меня, я только что попробовал:
Imports Microsoft.Practices.EnterpriseLibrary.Logging
Imports Microsoft.Practices.EnterpriseLibrary.Common.Configuration
Imports Microsoft.Practices.EnterpriseLibrary.Logging.TraceListeners
Module Module1
Sub Main()
InitializeEntlib("test.log")
Logger.Write("This is a test message")
End Sub
Sub InitializeEntlib(ByVal logFileName As String)
Dim builder As New ConfigurationSourceBuilder
builder.ConfigureLogging() _
.LogToCategoryNamed("Important") _
.WithOptions.SetAsDefaultCategory() _
.SendTo _
.RollingFile("StandardListener") _
.RollEvery(RollInterval.Midnight) _
.RollAfterSize(50000) _
.WhenRollFileExists(RollFileExistsBehavior.Increment) _
.FormatWith(New FormatterBuilder().TextFormatterNamed("Text Formatter")) _
.ToFile("D:\LogFiles\" + logFileName)
Dim configSource As New DictionaryConfigurationSource()
builder.UpdateConfigurationWithReplace(configSource)
EnterpriseLibraryContainer.Current = EnterpriseLibraryContainer.CreateDefaultContainer(configSource)
End Sub
End Module
Единственное, что я могу видеть, это то, что я использую TextFormatter вместо того, чем является ваш StandardFormatter. Попробуйте это и посмотрите, работает ли это - если нет, то чего-то еще не хватает.