Skip to content

karenpayneoregon/ef-core5-logging-vb

Repository files navigation

EF Core logging in .NET Core 5 VB.NET

Provides basic Entity Framework Core logging code samples.


Make sure to read ConfigurationHelper for appsettings.json settings.

✔️ Read EF Core connection string from appsettings.json

✔️ Configuring EF Core logging from appsettings.json


Options for logging

Public Enum LoggingDestination
    DebugWindow
    LogFile
    None
End Enum

Usage: reads appsettings.json

{
  "database": {
    "DatabaseServer": ".\\SQLEXPRESS",
    "Catalog": "School",
    "IntegratedSecurity": "true",
    "UsingLogging": "true",
    "LoggingDestination": "LogFile",
    "LogFileName": "karen.txt" 
  }
}

Protected Overrides Sub OnConfiguring(ByVal optionsBuilder As DbContextOptionsBuilder)

	If Not optionsBuilder.IsConfigured Then

		Select Case Helper.LoggingDestination()
			Case LoggingDestination.DebugWindow
				LogQueryInfoToDebugOutputWindow(optionsBuilder)
			Case LoggingDestination.LogFile
				LogQueryInfoToFile(optionsBuilder)
			Case LoggingDestination.None
				NoLogging(optionsBuilder)
			Case Else
				Throw New ArgumentOutOfRangeException()
		End Select

	End If

End Sub

img image img

NuGet packages

Id Versions
Microsoft.Extensions.Configuration.FileExtensions {5.0.0}
Newtonsoft.Json {12.0.3}
Microsoft.Extensions.Configuration.Binder {5.0.0}
Microsoft.Extensions.Configuration.Json {5.0.0}
Microsoft.Extensions.Configuration {5.0.0}

See also

These are all C#


img