diff --git a/src/EFCore.Jet/Diagnostics/Internal/JetLoggingDefinitions.cs b/src/EFCore.Jet/Diagnostics/Internal/JetLoggingDefinitions.cs
new file mode 100644
index 0000000..818e380
--- /dev/null
+++ b/src/EFCore.Jet/Diagnostics/Internal/JetLoggingDefinitions.cs
@@ -0,0 +1,143 @@
+// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.
+
+using Microsoft.EntityFrameworkCore.Diagnostics;
+
+namespace EntityFrameworkCore.Jet.Diagnostics.Internal
+{
+ ///
+ /// This is an internal API that supports the Entity Framework Core infrastructure and not subject to
+ /// the same compatibility standards as public APIs. It may be changed or removed without notice in
+ /// any release. You should only use it directly in your code with extreme caution and knowing that
+ /// doing so can result in application failures when updating to a new Entity Framework Core release.
+ ///
+ public class JetLoggingDefinitions : RelationalLoggingDefinitions
+ {
+ ///
+ /// This is an internal API that supports the Entity Framework Core infrastructure and not subject to
+ /// the same compatibility standards as public APIs. It may be changed or removed without notice in
+ /// any release. You should only use it directly in your code with extreme caution and knowing that
+ /// doing so can result in application failures when updating to a new Entity Framework Core release.
+ ///
+ public EventDefinitionBase LogDefaultDecimalTypeColumn;
+
+ ///
+ /// This is an internal API that supports the Entity Framework Core infrastructure and not subject to
+ /// the same compatibility standards as public APIs. It may be changed or removed without notice in
+ /// any release. You should only use it directly in your code with extreme caution and knowing that
+ /// doing so can result in application failures when updating to a new Entity Framework Core release.
+ ///
+ public EventDefinitionBase LogByteIdentityColumn;
+
+ ///
+ /// This is an internal API that supports the Entity Framework Core infrastructure and not subject to
+ /// the same compatibility standards as public APIs. It may be changed or removed without notice in
+ /// any release. You should only use it directly in your code with extreme caution and knowing that
+ /// doing so can result in application failures when updating to a new Entity Framework Core release.
+ ///
+ public EventDefinitionBase LogFoundDefaultSchema;
+
+ ///
+ /// This is an internal API that supports the Entity Framework Core infrastructure and not subject to
+ /// the same compatibility standards as public APIs. It may be changed or removed without notice in
+ /// any release. You should only use it directly in your code with extreme caution and knowing that
+ /// doing so can result in application failures when updating to a new Entity Framework Core release.
+ ///
+ public EventDefinitionBase LogFoundTypeAlias;
+
+ ///
+ /// This is an internal API that supports the Entity Framework Core infrastructure and not subject to
+ /// the same compatibility standards as public APIs. It may be changed or removed without notice in
+ /// any release. You should only use it directly in your code with extreme caution and knowing that
+ /// doing so can result in application failures when updating to a new Entity Framework Core release.
+ ///
+ public EventDefinitionBase LogFoundColumn;
+
+ ///
+ /// This is an internal API that supports the Entity Framework Core infrastructure and not subject to
+ /// the same compatibility standards as public APIs. It may be changed or removed without notice in
+ /// any release. You should only use it directly in your code with extreme caution and knowing that
+ /// doing so can result in application failures when updating to a new Entity Framework Core release.
+ ///
+ public EventDefinitionBase LogFoundForeignKey;
+
+ ///
+ /// This is an internal API that supports the Entity Framework Core infrastructure and not subject to
+ /// the same compatibility standards as public APIs. It may be changed or removed without notice in
+ /// any release. You should only use it directly in your code with extreme caution and knowing that
+ /// doing so can result in application failures when updating to a new Entity Framework Core release.
+ ///
+ public EventDefinitionBase LogPrincipalTableNotInSelectionSet;
+
+ ///
+ /// This is an internal API that supports the Entity Framework Core infrastructure and not subject to
+ /// the same compatibility standards as public APIs. It may be changed or removed without notice in
+ /// any release. You should only use it directly in your code with extreme caution and knowing that
+ /// doing so can result in application failures when updating to a new Entity Framework Core release.
+ ///
+ public EventDefinitionBase LogMissingSchema;
+
+ ///
+ /// This is an internal API that supports the Entity Framework Core infrastructure and not subject to
+ /// the same compatibility standards as public APIs. It may be changed or removed without notice in
+ /// any release. You should only use it directly in your code with extreme caution and knowing that
+ /// doing so can result in application failures when updating to a new Entity Framework Core release.
+ ///
+ public EventDefinitionBase LogMissingTable;
+
+ ///
+ /// This is an internal API that supports the Entity Framework Core infrastructure and not subject to
+ /// the same compatibility standards as public APIs. It may be changed or removed without notice in
+ /// any release. You should only use it directly in your code with extreme caution and knowing that
+ /// doing so can result in application failures when updating to a new Entity Framework Core release.
+ ///
+ public EventDefinitionBase LogFoundSequence;
+
+ ///
+ /// This is an internal API that supports the Entity Framework Core infrastructure and not subject to
+ /// the same compatibility standards as public APIs. It may be changed or removed without notice in
+ /// any release. You should only use it directly in your code with extreme caution and knowing that
+ /// doing so can result in application failures when updating to a new Entity Framework Core release.
+ ///
+ public EventDefinitionBase LogFoundTable;
+
+ ///
+ /// This is an internal API that supports the Entity Framework Core infrastructure and not subject to
+ /// the same compatibility standards as public APIs. It may be changed or removed without notice in
+ /// any release. You should only use it directly in your code with extreme caution and knowing that
+ /// doing so can result in application failures when updating to a new Entity Framework Core release.
+ ///
+ public EventDefinitionBase LogFoundIndex;
+
+ ///
+ /// This is an internal API that supports the Entity Framework Core infrastructure and not subject to
+ /// the same compatibility standards as public APIs. It may be changed or removed without notice in
+ /// any release. You should only use it directly in your code with extreme caution and knowing that
+ /// doing so can result in application failures when updating to a new Entity Framework Core release.
+ ///
+ public EventDefinitionBase LogFoundPrimaryKey;
+
+ ///
+ /// This is an internal API that supports the Entity Framework Core infrastructure and not subject to
+ /// the same compatibility standards as public APIs. It may be changed or removed without notice in
+ /// any release. You should only use it directly in your code with extreme caution and knowing that
+ /// doing so can result in application failures when updating to a new Entity Framework Core release.
+ ///
+ public EventDefinitionBase LogFoundUniqueConstraint;
+
+ ///
+ /// This is an internal API that supports the Entity Framework Core infrastructure and not subject to
+ /// the same compatibility standards as public APIs. It may be changed or removed without notice in
+ /// any release. You should only use it directly in your code with extreme caution and knowing that
+ /// doing so can result in application failures when updating to a new Entity Framework Core release.
+ ///
+ public EventDefinitionBase LogPrincipalColumnNotFound;
+
+ ///
+ /// This is an internal API that supports the Entity Framework Core infrastructure and not subject to
+ /// the same compatibility standards as public APIs. It may be changed or removed without notice in
+ /// any release. You should only use it directly in your code with extreme caution and knowing that
+ /// doing so can result in application failures when updating to a new Entity Framework Core release.
+ ///
+ public EventDefinitionBase LogReflexiveConstraintIgnored;
+ }
+}
\ No newline at end of file
diff --git a/src/EFCore.Jet/Diagnostics/JetEventId.cs b/src/EFCore.Jet/Diagnostics/JetEventId.cs
index da2cede..49f63b9 100644
--- a/src/EFCore.Jet/Diagnostics/JetEventId.cs
+++ b/src/EFCore.Jet/Diagnostics/JetEventId.cs
@@ -1,16 +1,15 @@
// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.
-using System;
-using Microsoft.EntityFrameworkCore;
-using Microsoft.EntityFrameworkCore.Diagnostics;
+using System.Diagnostics;
using Microsoft.Extensions.Logging;
-namespace EntityFrameworkCore.Jet.Diagnostics
+// ReSharper disable once CheckNamespace
+namespace Microsoft.EntityFrameworkCore.Diagnostics
{
///
///
- /// Event IDs for Jet events that correspond to messages logged to an
- /// and events sent to a .
+ /// Event IDs for SQL Server events that correspond to messages logged to an
+ /// and events sent to a .
///
///
/// These IDs are also used with to configure the
@@ -57,7 +56,8 @@ namespace EntityFrameworkCore.Jet.Diagnostics
UniqueConstraintFound,
IndexFound,
ForeignKeyFound,
- ForeignKeyPrincipalColumnMissingWarning
+ ForeignKeyPrincipalColumnMissingWarning,
+ ReflexiveConstraintIgnored
}
private static readonly string _validationPrefix = DbLoggerCategory.Model.Validation.Name + ".";
@@ -71,20 +71,20 @@ namespace EntityFrameworkCore.Jet.Diagnostics
/// This event is in the category.
///
///
- /// This event uses the payload when used with a .
+ /// This event uses the payload when used with a .
///
///
public static readonly EventId DecimalTypeDefaultWarning = MakeValidationId(Id.DecimalTypeDefaultWarning);
///
///
- /// A byte property is set up to use a Jet identity column.
+ /// A byte property is set up to use a SQL Server identity column.
///
///
/// This event is in the category.
///
///
- /// This event uses the payload when used with a .
+ /// This event uses the payload when used with a .
///
///
public static readonly EventId ByteIdentityColumnWarning = MakeValidationId(Id.ByteIdentityColumnWarning);
@@ -98,13 +98,6 @@ namespace EntityFrameworkCore.Jet.Diagnostics
///
public static readonly EventId ColumnFound = MakeScaffoldingId(Id.ColumnFound);
- ///
- /// A column of a foreign key was found.
- /// This event is in the category.
- ///
- [Obsolete]
- public static readonly EventId ForeignKeyColumnFound = MakeScaffoldingId(Id.ForeignKeyColumnFound);
-
///
/// A default schema was found.
/// This event is in the category.
@@ -129,81 +122,12 @@ namespace EntityFrameworkCore.Jet.Diagnostics
///
public static readonly EventId MissingTableWarning = MakeScaffoldingId(Id.MissingTableWarning);
- ///
- /// The database has an unnamed sequence.
- /// This event is in the category.
- ///
- [Obsolete]
- public static readonly EventId SequenceNotNamedWarning = MakeScaffoldingId(Id.SequenceNotNamedWarning);
-
- ///
- /// Columns in an index were not mapped.
- /// This event is in the category.
- ///
- [Obsolete]
- public static readonly EventId IndexColumnsNotMappedWarning = MakeScaffoldingId(Id.IndexColumnsNotMappedWarning);
-
///
/// A foreign key references a missing table at the principal end.
/// This event is in the category.
///
- public static readonly EventId ForeignKeyReferencesMissingPrincipalTableWarning = MakeScaffoldingId(Id.ForeignKeyReferencesMissingPrincipalTableWarning);
-
- ///
- /// Columns in a foreign key were not mapped.
- /// This event is in the category.
- ///
- [Obsolete]
- public static readonly EventId ForeignKeyColumnsNotMappedWarning = MakeScaffoldingId(Id.ForeignKeyColumnsNotMappedWarning);
-
- ///
- /// A foreign key is not named.
- /// This event is in the category.
- ///
- [Obsolete]
- public static readonly EventId ForeignKeyNotNamedWarning = MakeScaffoldingId(Id.ForeignKeyNotNamedWarning);
-
- ///
- /// A foreign key column was not found.
- /// This event is in the category.
- ///
- [Obsolete]
- public static readonly EventId ForeignKeyColumnMissingWarning = MakeScaffoldingId(Id.ForeignKeyColumnMissingWarning);
-
- ///
- /// A foreign key column was not named.
- /// This event is in the category.
- ///
- [Obsolete]
- public static readonly EventId ForeignKeyColumnNotNamedWarning = MakeScaffoldingId(Id.ForeignKeyColumnNotNamedWarning);
-
- ///
- /// A column is not named.
- /// This event is in the category.
- ///
- [Obsolete]
- public static readonly EventId ColumnNotNamedWarning = MakeScaffoldingId(Id.ColumnNotNamedWarning);
-
- ///
- /// An index is not named.
- /// This event is in the category.
- ///
- [Obsolete]
- public static readonly EventId IndexNotNamedWarning = MakeScaffoldingId(Id.IndexNotNamedWarning);
-
- ///
- /// The table referenced by an index was not found.
- /// This event is in the category.
- ///
- [Obsolete]
- public static readonly EventId IndexTableMissingWarning = MakeScaffoldingId(Id.IndexTableMissingWarning);
-
- ///
- /// An index column was not named.
- /// This event is in the category.
- ///
- [Obsolete]
- public static readonly EventId IndexColumnNotNamedWarning = MakeScaffoldingId(Id.IndexColumnNotNamedWarning);
+ public static readonly EventId ForeignKeyReferencesMissingPrincipalTableWarning =
+ MakeScaffoldingId(Id.ForeignKeyReferencesMissingPrincipalTableWarning);
///
/// A table was found.
@@ -211,47 +135,12 @@ namespace EntityFrameworkCore.Jet.Diagnostics
///
public static readonly EventId TableFound = MakeScaffoldingId(Id.TableFound);
- ///
- /// A table was skipped.
- /// This event is in the category.
- ///
- [Obsolete]
- public static readonly EventId TableSkipped = MakeScaffoldingId(Id.TableSkipped);
-
- ///
- /// A column was skipped.
- /// This event is in the category.
- ///
- [Obsolete]
- public static readonly EventId ColumnSkipped = MakeScaffoldingId(Id.ColumnSkipped);
-
- ///
- /// An index was skipped.
- /// This event is in the category.
- ///
- [Obsolete]
- public static readonly EventId IndexColumnFound = MakeScaffoldingId(Id.IndexColumnFound);
-
- ///
- /// A column of an index was skipped.
- /// This event is in the category.
- ///
- [Obsolete]
- public static readonly EventId IndexColumnSkipped = MakeScaffoldingId(Id.IndexColumnSkipped);
-
///
/// A sequence was found.
/// This event is in the category.
///
public static readonly EventId SequenceFound = MakeScaffoldingId(Id.SequenceFound);
- ///
- /// A foreign key table was not found.
- /// This event is in the category.
- ///
- [Obsolete]
- public static readonly EventId ForeignKeyTableMissingWarning = MakeScaffoldingId(Id.ForeignKeyTableMissingWarning);
-
///
/// Primary key was found.
/// This event is in the category.
@@ -280,6 +169,13 @@ namespace EntityFrameworkCore.Jet.Diagnostics
/// A principal column referenced by a foreign key was not found.
/// This event is in the category.
///
- public static readonly EventId ForeignKeyPrincipalColumnMissingWarning = MakeScaffoldingId(Id.ForeignKeyPrincipalColumnMissingWarning);
+ public static readonly EventId ForeignKeyPrincipalColumnMissingWarning =
+ MakeScaffoldingId(Id.ForeignKeyPrincipalColumnMissingWarning);
+
+ ///
+ /// A reflexive foreign key constraint was skipped.
+ /// This event is in the category.
+ ///
+ public static readonly EventId ReflexiveConstraintIgnored = MakeScaffoldingId(Id.ReflexiveConstraintIgnored);
}
-}
+}
\ No newline at end of file