This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
| nebollogger.entityframework [2021/08/02 17:21] – nebol | nebollogger.entityframework [2021/08/07 02:10] (current) – nebol | ||
|---|---|---|---|
| Line 4: | Line 4: | ||
| See the nuget page at https:// | See the nuget page at https:// | ||
| - | |||
| - | Despite the name it only supports (currently as of 1.0.0.12) .NET Standard 2.1 and .NET Core 3.0 and 3.1 | ||
| It creates and uses a couple of tables: | It creates and uses a couple of tables: | ||
| Line 11: | Line 9: | ||
| * LogMachine - stores details on the machine that logs the entry (name, IP etc) | * LogMachine - stores details on the machine that logs the entry (name, IP etc) | ||
| * LogApplication - stores details on the application that logs the entry (name etc) | * LogApplication - stores details on the application that logs the entry (name etc) | ||
| - | * LogComponent - stores details on the component | + | * LogComponent - stores details on the component (source file) that logs the entry |
| * LogEntry - the actual log entry | * LogEntry - the actual log entry | ||
| - | |||
| === Initialization in .NET Standard / .NET Core for MS SQL Server === | === Initialization in .NET Standard / .NET Core for MS SQL Server === | ||
| Line 27: | Line 24: | ||
| </ | </ | ||
| + | < | ||
| + | using Microsoft.EntityFrameworkCore; | ||
| + | using NebolLogger; | ||
| + | using NebolLogger.Destinations.Database; | ||
| + | using NebolLogger.EntityFramework; | ||
| + | using NebolLogger.Filters; | ||
| + | </ | ||
| < | < | ||
| Line 43: | Line 47: | ||
| Logger.Instance.Destinations.Add(db_dest); | Logger.Instance.Destinations.Add(db_dest); | ||
| } | } | ||
| + | </ | ||
| + | |||
| + | === Initialization in .NET Framework for MS SQL Server === | ||
| + | |||
| + | Create the empty database. | ||
| + | |||
| + | EF Migrations do not work (not yet in any case) so you need to create the schema contents by running the script that is added to your project when installing the package (in the Database Scripts folder) | ||
| + | |||
| + | < | ||
| + | Install-Package Microsoft.EntityFramework | ||
| + | </ | ||
| + | |||
| + | < | ||
| + | using NebolLogger; | ||
| + | using NebolLogger.Destinations.Database; | ||
| + | using NebolLogger.EntityFramework; | ||
| + | using NebolLogger.Filters; | ||
| + | </ | ||
| + | |||
| + | < | ||
| + | static void SetupLogging() | ||
| + | { | ||
| + | Destination_Database db_dest = new Destination_Database(connection_string); | ||
| + | |||
| + | db_dest.Filters.Add(new Filter_Level(LogType.information)); | ||
| + | |||
| + | Logger.Instance.Destinations.Add(db_dest); | ||
| + | } | ||
| + | </ | ||
| + | |||
| + | === Another possible option for DB creation: Using Microsoft.EntityFramework.Tools === | ||
| + | |||
| + | To prepare database, run in Package Manager: | ||
| + | |||
| + | < | ||
| + | update-database -ConfigurationTypeName NebolLogger.EntityFramework.NebolLoggerDbContextConfiguration -Verbose | ||
| + | </ | ||
| + | |||
| + | or if you're using MySQL: | ||
| + | |||
| + | < | ||
| + | update-database -ConfigurationTypeName NebolLogger.EntityFramework.NebolLoggerDbContextConfiguration_MySQL -Verbose | ||
| </ | </ | ||