private static string ChangesSaved(EventDefinitionBase definition, EventData payload) { EventDefinition <int> d = (EventDefinition <int>)definition; SaveChangesEventData p = (SaveChangesEventData)payload; return(d.GenerateMessage(p.RowsAffected)); }
/// <summary> /// 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. /// </summary> public static void ChangesSaved( this IDiagnosticsLogger <DbLoggerCategory.Update> diagnostics, IEnumerable <IUpdateEntry> entries, int rowsAffected) { var definition = InMemoryResources.LogSavedChanges(diagnostics); if (diagnostics.ShouldLog(definition)) { definition.Log(diagnostics, rowsAffected); } if (diagnostics.NeedsEventData(definition, out var diagnosticSourceEnabled, out var simpleLogEnabled)) { var eventData = new SaveChangesEventData( definition, ChangesSaved, entries, rowsAffected); diagnostics.DispatchEventData(definition, eventData, diagnosticSourceEnabled, simpleLogEnabled); } }