diff --git a/src/EFCore.Cosmos/Extensions/CosmosServiceCollectionExtensions.cs b/src/EFCore.Cosmos/Extensions/CosmosServiceCollectionExtensions.cs index 1791029d5aa..66be77af4d4 100644 --- a/src/EFCore.Cosmos/Extensions/CosmosServiceCollectionExtensions.cs +++ b/src/EFCore.Cosmos/Extensions/CosmosServiceCollectionExtensions.cs @@ -48,8 +48,7 @@ public static class CosmosServiceCollectionExtensions /// an optional action to configure the for the context. /// /// - /// For more information on how to use this method, see the Entity Framework Core documentation at https://aka.ms/efdocs. - /// For more information on using dependency injection, see https://go.microsoft.com/fwlink/?LinkId=526890. + /// See Using DbContext with dependency injection for more information. /// /// /// The type of context to be registered. diff --git a/src/EFCore.Proxies/ProxiesServiceCollectionExtensions.cs b/src/EFCore.Proxies/ProxiesServiceCollectionExtensions.cs index b296cab59ee..8772aa1a13e 100644 --- a/src/EFCore.Proxies/ProxiesServiceCollectionExtensions.cs +++ b/src/EFCore.Proxies/ProxiesServiceCollectionExtensions.cs @@ -1,6 +1,7 @@ // Licensed to the .NET Foundation under one or more agreements. // The .NET Foundation licenses this file to you under the MIT license. +using Microsoft.EntityFrameworkCore; using Microsoft.EntityFrameworkCore.Infrastructure; using Microsoft.EntityFrameworkCore.Metadata.Conventions.Infrastructure; using Microsoft.EntityFrameworkCore.Proxies.Internal; @@ -16,14 +17,14 @@ public static class ProxiesServiceCollectionExtensions { /// /// - /// Adds the services required for proxy support in Entity Framework. You use this method when - /// using dependency injection in your application, such as with ASP.NET. For more information - /// on setting up dependency injection, see http://go.microsoft.com/fwlink/?LinkId=526890. + /// Adds the services required for proxy support in Entity Framework. /// /// - /// You only need to use this functionality when you want Entity Framework to resolve the services it uses - /// from an external dependency injection container. If you are not using an external - /// dependency injection container, Entity Framework will take care of creating the services it requires. + /// Calling this method is no longer necessary when building most applications, including those that + /// use dependency injection in ASP.NET or elsewhere. + /// It is only needed when building the internal service provider for use with + /// the method. + /// This is not recommend other than for some advanced scenarios. /// /// /// The to add services to. diff --git a/src/EFCore.SqlServer/Extensions/SqlServerServiceCollectionExtensions.cs b/src/EFCore.SqlServer/Extensions/SqlServerServiceCollectionExtensions.cs index 5ad94e8f6cb..d55f9ab69c8 100644 --- a/src/EFCore.SqlServer/Extensions/SqlServerServiceCollectionExtensions.cs +++ b/src/EFCore.SqlServer/Extensions/SqlServerServiceCollectionExtensions.cs @@ -54,8 +54,7 @@ public static class SqlServerServiceCollectionExtensions /// an optional action to configure the for the context. /// /// - /// For more information on how to use this method, see the Entity Framework Core documentation at https://aka.ms/efdocs. - /// For more information on using dependency injection, see https://go.microsoft.com/fwlink/?LinkId=526890. + /// See Using DbContext with dependency injection for more information. /// /// /// The type of context to be registered. diff --git a/src/EFCore.Sqlite.Core/Extensions/SqliteServiceCollectionExtensions.cs b/src/EFCore.Sqlite.Core/Extensions/SqliteServiceCollectionExtensions.cs index e887125814d..a38a2a8e8f8 100644 --- a/src/EFCore.Sqlite.Core/Extensions/SqliteServiceCollectionExtensions.cs +++ b/src/EFCore.Sqlite.Core/Extensions/SqliteServiceCollectionExtensions.cs @@ -52,8 +52,7 @@ public static class SqliteServiceCollectionExtensions /// an optional action to configure the for the context. /// /// - /// For more information on how to use this method, see the Entity Framework Core documentation at https://aka.ms/efdocs. - /// For more information on using dependency injection, see https://go.microsoft.com/fwlink/?LinkId=526890. + /// See Using DbContext with dependency injection for more information. /// /// /// The type of context to be registered. diff --git a/src/EFCore.Sqlite.Core/Properties/SqliteStrings.Designer.cs b/src/EFCore.Sqlite.Core/Properties/SqliteStrings.Designer.cs index 0c4c6a120d0..68861aba91f 100644 --- a/src/EFCore.Sqlite.Core/Properties/SqliteStrings.Designer.cs +++ b/src/EFCore.Sqlite.Core/Properties/SqliteStrings.Designer.cs @@ -43,7 +43,7 @@ public static string DuplicateColumnNameSridMismatch(object? entityType1, object entityType1, property1, entityType2, property2, columnName, table); /// - /// SQLite does not support this migration operation ('{operation}'). For more information, see http://go.microsoft.com/fwlink/?LinkId=723262. + /// SQLite does not support this migration operation ('{operation}'). See http://go.microsoft.com/fwlink/?LinkId=723262 for more information. /// public static string InvalidMigrationOperation(object? operation) => string.Format( @@ -51,7 +51,7 @@ public static string InvalidMigrationOperation(object? operation) operation); /// - /// Generating idempotent scripts for migrations is not currently supported for SQLite. For more information, see http://go.microsoft.com/fwlink/?LinkId=723262. + /// Generating idempotent scripts for migrations is not currently supported for SQLite. See http://go.microsoft.com/fwlink/?LinkId=723262 for more information. /// public static string MigrationScriptGenerationNotSupported => GetString("MigrationScriptGenerationNotSupported"); @@ -65,7 +65,7 @@ public static string OrderByNotSupported(object? type) type); /// - /// SQLite does not support sequences. For more information, see http://go.microsoft.com/fwlink/?LinkId=723262. + /// SQLite does not support sequences. See http://go.microsoft.com/fwlink/?LinkId=723262 for more information. /// public static string SequencesNotSupported => GetString("SequencesNotSupported"); diff --git a/src/EFCore.Sqlite.Core/Properties/SqliteStrings.resx b/src/EFCore.Sqlite.Core/Properties/SqliteStrings.resx index f1c44e75168..77e69ab1882 100644 --- a/src/EFCore.Sqlite.Core/Properties/SqliteStrings.resx +++ b/src/EFCore.Sqlite.Core/Properties/SqliteStrings.resx @@ -127,7 +127,7 @@ '{entityType1}.{property1}' and '{entityType2}.{property2}' are both mapped to column '{columnName}' in '{table}', but are configured with different SRIDs. - SQLite does not support this migration operation ('{operation}'). For more information, see http://go.microsoft.com/fwlink/?LinkId=723262. + SQLite does not support this migration operation ('{operation}'). See http://go.microsoft.com/fwlink/?LinkId=723262 for more information. Skipping foreign key with identity '{id}' on table '{tableName}' since principal table '{principalTableName}' was not found in the model. This usually happens when the principal table was not included in the selection set. @@ -186,12 +186,12 @@ Warning SqliteEventId.SchemasNotSupportedWarning - Generating idempotent scripts for migrations is not currently supported for SQLite. For more information, see http://go.microsoft.com/fwlink/?LinkId=723262. + Generating idempotent scripts for migrations is not currently supported for SQLite. See http://go.microsoft.com/fwlink/?LinkId=723262 for more information. SQLite does not support expressions of type '{type}' in ORDER BY clauses. Convert the values to a supported type, or use LINQ to Objects to order the results on the client side. - SQLite does not support sequences. For more information, see http://go.microsoft.com/fwlink/?LinkId=723262. + SQLite does not support sequences. See http://go.microsoft.com/fwlink/?LinkId=723262 for more information. \ No newline at end of file diff --git a/src/EFCore/ChangeTracking/ArrayStructuralComparer.cs b/src/EFCore/ChangeTracking/ArrayStructuralComparer.cs index 7b2a33aa74d..b7d42bd3b7a 100644 --- a/src/EFCore/ChangeTracking/ArrayStructuralComparer.cs +++ b/src/EFCore/ChangeTracking/ArrayStructuralComparer.cs @@ -12,7 +12,7 @@ namespace Microsoft.EntityFrameworkCore.ChangeTracking /// /// /// - /// For more information, see EF Core value comparers. + /// See EF Core value comparers for more information. /// /// The array element type. public class ArrayStructuralComparer : ValueComparer diff --git a/src/EFCore/ChangeTracking/CascadeTiming.cs b/src/EFCore/ChangeTracking/CascadeTiming.cs index 28e738b9dbc..f15ede1c474 100644 --- a/src/EFCore/ChangeTracking/CascadeTiming.cs +++ b/src/EFCore/ChangeTracking/CascadeTiming.cs @@ -8,7 +8,7 @@ namespace Microsoft.EntityFrameworkCore.ChangeTracking /// See and . /// /// - /// For more information, see EF Core cascade deletes and deleting orphans. + /// See EF Core cascade deletes and deleting orphans for more information. /// public enum CascadeTiming { diff --git a/src/EFCore/ChangeTracking/ChangeTracker.cs b/src/EFCore/ChangeTracking/ChangeTracker.cs index e83395cd330..ed70c049c9f 100644 --- a/src/EFCore/ChangeTracking/ChangeTracker.cs +++ b/src/EFCore/ChangeTracking/ChangeTracker.cs @@ -21,7 +21,7 @@ namespace Microsoft.EntityFrameworkCore.ChangeTracking /// to be directly constructed in your application code. /// /// - /// For more information, EF Core change tracking. + /// See EF Core change tracking for more information. /// public class ChangeTracker : IResettableService { diff --git a/src/EFCore/ChangeTracking/ChangeTrackerDebugStringOptions.cs b/src/EFCore/ChangeTracking/ChangeTrackerDebugStringOptions.cs index 47452ac18fe..34f81ed79a7 100644 --- a/src/EFCore/ChangeTracking/ChangeTrackerDebugStringOptions.cs +++ b/src/EFCore/ChangeTracking/ChangeTrackerDebugStringOptions.cs @@ -9,8 +9,8 @@ namespace Microsoft.EntityFrameworkCore.ChangeTracking /// Debug string customization options for tracked entities. /// /// - /// For more information, EF Core change tracking and - /// EF Core debug views. + /// See EF Core change tracking and + /// EF Core debug views for more information. /// [Flags] public enum ChangeTrackerDebugStringOptions diff --git a/src/EFCore/ChangeTracking/ChangeTrackerExtensions.cs b/src/EFCore/ChangeTracking/ChangeTrackerExtensions.cs index 94736e697bf..beb702d8d0e 100644 --- a/src/EFCore/ChangeTracking/ChangeTrackerExtensions.cs +++ b/src/EFCore/ChangeTracking/ChangeTrackerExtensions.cs @@ -17,7 +17,7 @@ namespace Microsoft.EntityFrameworkCore /// Extension methods for . /// /// - /// For more information, EF Core change tracking. + /// See EF Core change tracking for more information. /// public static class ChangeTrackerExtensions { @@ -31,7 +31,7 @@ public static class ChangeTrackerExtensions /// /// /// - /// For more information, EF Core change tracking. + /// See EF Core change tracking for more information. /// /// The metadata item. /// Options for generating the string. diff --git a/src/EFCore/ChangeTracking/CollectionEntry.cs b/src/EFCore/ChangeTracking/CollectionEntry.cs index b27f965d706..d716ea534b6 100644 --- a/src/EFCore/ChangeTracking/CollectionEntry.cs +++ b/src/EFCore/ChangeTracking/CollectionEntry.cs @@ -25,9 +25,9 @@ namespace Microsoft.EntityFrameworkCore.ChangeTracking /// /// /// - /// For more information, Accessing tracked entities in EF Core, + /// See Accessing tracked entities in EF Core, /// Changing foreign keys and navigations, - /// and Loading related entities. + /// and Loading related entities for more information. /// public class CollectionEntry : NavigationEntry { @@ -86,8 +86,9 @@ private void LocalDetectChanges() /// for the context to detect the change. /// /// - /// For more information, Accessing tracked entities in EF Core - /// and Changing foreign keys and navigations. + /// See Accessing tracked entities in EF Core + /// and Changing foreign keys and navigations + /// for more information. /// public new virtual IEnumerable? CurrentValue { @@ -101,8 +102,9 @@ private void LocalDetectChanges() /// when is called. /// /// - /// For more information, Accessing tracked entities in EF Core - /// and Changing foreign keys and navigations. + /// See Accessing tracked entities in EF Core + /// and Changing foreign keys and navigations + /// for more information. /// public override bool IsModified { @@ -214,8 +216,8 @@ public override bool IsModified /// /// /// - /// For more information, Accessing tracked entities in EF Core - /// and Loading related entities. + /// See Accessing tracked entities in EF Core + /// and Loading related entities for more information. /// public override void Load() { @@ -236,13 +238,13 @@ public override void Load() /// Note that entities that are already being tracked are not overwritten with new data from the database. /// /// - /// Multiple active operations on the same context instance are not supported. Use to ensure + /// Multiple active operations on the same context instance are not supported. Use to ensure /// that any asynchronous operations have completed before calling another method on this context. /// /// /// - /// For more information, Accessing tracked entities in EF Core - /// and Loading related entities. + /// See Accessing tracked entities in EF Core + /// and Loading related entities for more information. /// /// A to observe while waiting for the task to complete. /// A task that represents the asynchronous save operation. @@ -267,8 +269,8 @@ public override Task LoadAsync(CancellationToken cancellationToken = default) /// /// /// - /// For more information, Accessing tracked entities in EF Core - /// and Loading related entities. + /// See Accessing tracked entities in EF Core + /// and Loading related entities for more information. /// public override IQueryable Query() { @@ -284,7 +286,7 @@ private void EnsureInitialized() /// The of an entity this navigation targets. /// /// - /// For more information, Accessing tracked entities in EF Core. + /// See Accessing tracked entities in EF Core for more information. /// /// The entity to get the entry for. /// An entry for an entity that this navigation targets. diff --git a/src/EFCore/ChangeTracking/CollectionEntry`.cs b/src/EFCore/ChangeTracking/CollectionEntry`.cs index ef35a0d678c..5215e9f61ec 100644 --- a/src/EFCore/ChangeTracking/CollectionEntry`.cs +++ b/src/EFCore/ChangeTracking/CollectionEntry`.cs @@ -20,9 +20,9 @@ namespace Microsoft.EntityFrameworkCore.ChangeTracking /// /// /// - /// For more information, Accessing tracked entities in EF Core, + /// See Accessing tracked entities in EF Core, /// Changing foreign keys and navigations, - /// and Loading related entities. + /// and Loading related entities for more information. /// /// The type of the entity the property belongs to. /// The type of the property. @@ -58,7 +58,7 @@ public CollectionEntry(InternalEntityEntry internalEntry, INavigation navigation /// The to which this member belongs. /// /// - /// For more information, Accessing tracked entities in EF Core. + /// See Accessing tracked entities in EF Core for more information. /// /// An entry for the entity that owns this member. public new virtual EntityEntry EntityEntry @@ -70,8 +70,9 @@ public CollectionEntry(InternalEntityEntry internalEntry, INavigation navigation /// for the context to detect the change. /// /// - /// For more information, Accessing tracked entities in EF Core - /// and Changing foreign keys and navigations. + /// See Accessing tracked entities in EF Core + /// and Changing foreign keys and navigations + /// for more information. /// public new virtual IEnumerable? CurrentValue { @@ -90,8 +91,8 @@ public CollectionEntry(InternalEntityEntry internalEntry, INavigation navigation /// /// /// - /// For more information, Accessing tracked entities in EF Core - /// and Loading related entities. + /// See Accessing tracked entities in EF Core + /// and Loading related entities for more information. /// public new virtual IQueryable Query() { @@ -104,7 +105,7 @@ public CollectionEntry(InternalEntityEntry internalEntry, INavigation navigation /// The of an entity this navigation targets. /// /// - /// For more information, Accessing tracked entities in EF Core. + /// See Accessing tracked entities in EF Core for more information. /// /// The entity to get the entry for. /// An entry for an entity that this navigation targets. diff --git a/src/EFCore/ChangeTracking/EntityEntry.cs b/src/EFCore/ChangeTracking/EntityEntry.cs index 4b2f62d84ab..2e553d46139 100644 --- a/src/EFCore/ChangeTracking/EntityEntry.cs +++ b/src/EFCore/ChangeTracking/EntityEntry.cs @@ -29,7 +29,7 @@ namespace Microsoft.EntityFrameworkCore.ChangeTracking /// /// /// - /// For more information, Accessing tracked entities in EF Core. + /// See Accessing tracked entities in EF Core for more information. /// [DebuggerDisplay("{" + nameof(InternalEntry) + ",nq}")] public class EntityEntry : IInfrastructure @@ -82,7 +82,7 @@ public virtual object Entity /// /// /// - /// For more information, Accessing tracked entities in EF Core. + /// See Accessing tracked entities in EF Core for more information. /// public virtual EntityState State { @@ -106,7 +106,7 @@ public virtual EntityState State /// disabled . /// /// - /// For more information, see Change detection and notifications. + /// See Change detection and notifications for more information. /// public virtual void DetectChanges() { @@ -143,7 +143,7 @@ public virtual IEntityType Metadata /// property or navigation property of this entity. /// /// - /// For more information, Accessing tracked entities in EF Core. + /// See Accessing tracked entities in EF Core for more information. /// /// The property to access information and operations for. /// An object that exposes change tracking information and operations for the given property. @@ -175,7 +175,7 @@ public virtual MemberEntry Member(string propertyName) /// properties and navigation properties of this entity. /// /// - /// For more information, Accessing tracked entities in EF Core. + /// See Accessing tracked entities in EF Core for more information. /// public virtual IEnumerable Members => Properties.Cast().Concat(Navigations); @@ -185,8 +185,9 @@ public virtual IEnumerable Members /// navigation property of this entity. /// /// - /// For more information, Accessing tracked entities in EF Core - /// and Changing foreign keys and navigations. + /// See Accessing tracked entities in EF Core + /// and Changing foreign keys and navigations + /// for more information. /// /// The property to access information and operations for. /// An object that exposes change tracking information and operations for the given property. @@ -221,8 +222,9 @@ public virtual NavigationEntry Navigation(string propertyName) /// navigation properties of this entity. /// /// - /// For more information, Accessing tracked entities in EF Core - /// and Changing foreign keys and navigations. + /// See Accessing tracked entities in EF Core + /// and Changing foreign keys and navigations + /// for more information. /// public virtual IEnumerable Navigations { @@ -243,7 +245,7 @@ public virtual IEnumerable Navigations /// property of this entity. /// /// - /// For more information, Accessing tracked entities in EF Core. + /// See Accessing tracked entities in EF Core for more information. /// /// The property to access information and operations for. /// An object that exposes change tracking information and operations for the given property. @@ -259,7 +261,7 @@ public virtual PropertyEntry Property(string propertyName) /// properties of this entity. /// /// - /// For more information, Accessing tracked entities in EF Core. + /// See Accessing tracked entities in EF Core for more information. /// public virtual IEnumerable Properties => InternalEntry.EntityType.GetProperties().Select(property => new PropertyEntry(InternalEntry, property)); @@ -269,8 +271,9 @@ public virtual IEnumerable Properties /// navigation property that associates this entity to another entity. /// /// - /// For more information, Accessing tracked entities in EF Core - /// and Changing foreign keys and navigations. + /// See Accessing tracked entities in EF Core + /// and Changing foreign keys and navigations + /// for more information. /// /// The name of the navigation property. /// @@ -289,8 +292,9 @@ public virtual ReferenceEntry Reference(string propertyName) /// reference (i.e. non-collection) navigation properties of this entity. /// /// - /// For more information, Accessing tracked entities in EF Core - /// and Changing foreign keys and navigations. + /// See Accessing tracked entities in EF Core + /// and Changing foreign keys and navigations + /// for more information. /// public virtual IEnumerable References => InternalEntry.EntityType.GetNavigations().Where(n => !n.IsCollection) @@ -301,8 +305,9 @@ public virtual IEnumerable References /// navigation property that associates this entity to a collection of another entities. /// /// - /// For more information, Accessing tracked entities in EF Core - /// and Changing foreign keys and navigations. + /// See Accessing tracked entities in EF Core + /// and Changing foreign keys and navigations + /// for more information. /// /// The name of the navigation property. /// @@ -321,8 +326,9 @@ public virtual CollectionEntry Collection(string propertyName) /// collection navigation properties of this entity. /// /// - /// For more information, Accessing tracked entities in EF Core - /// and Changing foreign keys and navigations. + /// See Accessing tracked entities in EF Core + /// and Changing foreign keys and navigations + /// for more information. /// public virtual IEnumerable Collections { @@ -351,7 +357,7 @@ public virtual IEnumerable Collections /// /// /// - /// For more information, EF Core change tracking. + /// See EF Core change tracking for more information. /// public virtual bool IsKeySet => InternalEntry.IsKeySet.IsSet; @@ -360,7 +366,7 @@ public virtual bool IsKeySet /// Gets the current property values for this entity. /// /// - /// For more information, Accessing tracked entities in EF Core. + /// See Accessing tracked entities in EF Core for more information. /// /// The current values. public virtual PropertyValues CurrentValues @@ -381,7 +387,7 @@ public virtual PropertyValues CurrentValues /// /// /// - /// For more information, Accessing tracked entities in EF Core. + /// See Accessing tracked entities in EF Core for more information. /// /// The original values. public virtual PropertyValues OriginalValues @@ -401,7 +407,7 @@ public virtual PropertyValues OriginalValues /// /// /// - /// For more information, Accessing tracked entities in EF Core. + /// See Accessing tracked entities in EF Core for more information. /// /// The store values, or if the entity does not exist in the database. public virtual PropertyValues? GetDatabaseValues() @@ -421,12 +427,12 @@ public virtual PropertyValues OriginalValues /// in the database. /// /// - /// Multiple active operations on the same context instance are not supported. Use to ensure + /// Multiple active operations on the same context instance are not supported. Use to ensure /// that any asynchronous operations have completed before calling another method on this context. /// /// /// - /// For more information, Accessing tracked entities in EF Core. + /// See Accessing tracked entities in EF Core for more information. /// /// A to observe while waiting for the task to complete. /// @@ -454,7 +460,7 @@ public virtual PropertyValues OriginalValues /// /// /// - /// For more information, Accessing tracked entities in EF Core. + /// See Accessing tracked entities in EF Core for more information. /// public virtual void Reload() => Reload(GetDatabaseValues()); @@ -472,7 +478,7 @@ public virtual void Reload() /// /// /// - /// For more information, Accessing tracked entities in EF Core. + /// See Accessing tracked entities in EF Core for more information. /// /// A to observe while waiting for the task to complete. /// A task that represents the asynchronous operation. @@ -518,8 +524,8 @@ public override string ToString() /// /// /// - /// For more information, EF Core change tracking and - /// EF Core debug views. + /// See EF Core change tracking and + /// EF Core debug views for more information. /// public virtual DebugView DebugView => new( diff --git a/src/EFCore/ChangeTracking/EntityEntryEventArgs.cs b/src/EFCore/ChangeTracking/EntityEntryEventArgs.cs index 9ad0756dcac..d780e751599 100644 --- a/src/EFCore/ChangeTracking/EntityEntryEventArgs.cs +++ b/src/EFCore/ChangeTracking/EntityEntryEventArgs.cs @@ -11,7 +11,7 @@ namespace Microsoft.EntityFrameworkCore.ChangeTracking /// Event arguments for events relating to tracked s. /// /// - /// For more information, Accessing tracked entities in EF Core. + /// See Accessing tracked entities in EF Core for more information. /// public class EntityEntryEventArgs : EventArgs { diff --git a/src/EFCore/ChangeTracking/EntityEntryGraphNode.cs b/src/EFCore/ChangeTracking/EntityEntryGraphNode.cs index 660d4b00c91..fa513a1ce36 100644 --- a/src/EFCore/ChangeTracking/EntityEntryGraphNode.cs +++ b/src/EFCore/ChangeTracking/EntityEntryGraphNode.cs @@ -20,7 +20,7 @@ namespace Microsoft.EntityFrameworkCore.ChangeTracking /// /// /// - /// For more information, Tracking entities in EF Core. + /// See Tracking entities in EF Core for more information. /// public class EntityEntryGraphNode : IInfrastructure { diff --git a/src/EFCore/ChangeTracking/EntityEntryGraphNode`.cs b/src/EFCore/ChangeTracking/EntityEntryGraphNode`.cs index 1fd6c1bd6dd..1297884dc37 100644 --- a/src/EFCore/ChangeTracking/EntityEntryGraphNode`.cs +++ b/src/EFCore/ChangeTracking/EntityEntryGraphNode`.cs @@ -14,7 +14,7 @@ namespace Microsoft.EntityFrameworkCore.ChangeTracking /// graph of entities that is being traversed. /// /// - /// For more information, Tracking entities in EF Core. + /// See Tracking entities in EF Core for more information. /// public class EntityEntryGraphNode : EntityEntryGraphNode { diff --git a/src/EFCore/ChangeTracking/EntityEntry`.cs b/src/EFCore/ChangeTracking/EntityEntry`.cs index c60b9a742f8..4f8d1dee843 100644 --- a/src/EFCore/ChangeTracking/EntityEntry`.cs +++ b/src/EFCore/ChangeTracking/EntityEntry`.cs @@ -23,7 +23,7 @@ namespace Microsoft.EntityFrameworkCore.ChangeTracking /// /// /// - /// For more information, Accessing tracked entities in EF Core. + /// See Accessing tracked entities in EF Core for more information. /// /// The type of entity being tracked by this entry. public class EntityEntry : EntityEntry @@ -52,7 +52,7 @@ public EntityEntry(InternalEntityEntry internalEntry) /// property of this entity. /// /// - /// For more information, Accessing tracked entities in EF Core. + /// See Accessing tracked entities in EF Core for more information. /// /// /// A lambda expression representing the property to access information and operations for @@ -72,8 +72,9 @@ public virtual PropertyEntry Property( /// navigation property that associates this entity to another entity. /// /// - /// For more information, Accessing tracked entities in EF Core - /// and Changing foreign keys and navigations. + /// See Accessing tracked entities in EF Core + /// and Changing foreign keys and navigations + /// for more information. /// /// /// A lambda expression representing the property to access information and operations for @@ -97,8 +98,9 @@ public virtual ReferenceEntry Reference( /// navigation property that associates this entity to a collection of another entities. /// /// - /// For more information, Accessing tracked entities in EF Core - /// and Changing foreign keys and navigations. + /// See Accessing tracked entities in EF Core + /// and Changing foreign keys and navigations + /// for more information. /// /// /// A lambda expression representing the property to access information and operations for @@ -122,8 +124,9 @@ public virtual CollectionEntry Collection( /// navigation property that associates this entity to another entity. /// /// - /// For more information, Accessing tracked entities in EF Core - /// and Changing foreign keys and navigations. + /// See Accessing tracked entities in EF Core + /// and Changing foreign keys and navigations + /// for more information. /// /// The name of the navigation property. /// @@ -143,8 +146,9 @@ public virtual ReferenceEntry Reference(string pr /// navigation property that associates this entity to a collection of another entities. /// /// - /// For more information, Accessing tracked entities in EF Core - /// and Changing foreign keys and navigations. + /// See Accessing tracked entities in EF Core + /// and Changing foreign keys and navigations + /// for more information. /// /// The name of the navigation property. /// @@ -164,7 +168,7 @@ public virtual CollectionEntry Collection(string /// property of this entity. /// /// - /// For more information, Accessing tracked entities in EF Core. + /// See Accessing tracked entities in EF Core for more information. /// /// The type of the property. /// The property to access information and operations for. diff --git a/src/EFCore/ChangeTracking/EntityStateChangedEventArgs.cs b/src/EFCore/ChangeTracking/EntityStateChangedEventArgs.cs index d7e534d8055..5350fe642b4 100644 --- a/src/EFCore/ChangeTracking/EntityStateChangedEventArgs.cs +++ b/src/EFCore/ChangeTracking/EntityStateChangedEventArgs.cs @@ -10,7 +10,7 @@ namespace Microsoft.EntityFrameworkCore.ChangeTracking /// Event arguments for the event. /// /// - /// For more information, State changes of entities in EF Core. + /// See State changes of entities in EF Core for more information. /// public class EntityStateChangedEventArgs : EntityEntryEventArgs { diff --git a/src/EFCore/ChangeTracking/EntityTrackedEventArgs.cs b/src/EFCore/ChangeTracking/EntityTrackedEventArgs.cs index 004f36e5c50..3a58952f98b 100644 --- a/src/EFCore/ChangeTracking/EntityTrackedEventArgs.cs +++ b/src/EFCore/ChangeTracking/EntityTrackedEventArgs.cs @@ -10,7 +10,7 @@ namespace Microsoft.EntityFrameworkCore.ChangeTracking /// Event arguments for the event. /// /// - /// For more information, State changes of entities in EF Core. + /// See State changes of entities in EF Core for more information. /// public class EntityTrackedEventArgs : EntityEntryEventArgs { diff --git a/src/EFCore/ChangeTracking/EntryCurrentValueComparer`.cs b/src/EFCore/ChangeTracking/EntryCurrentValueComparer`.cs index fbdc4a2d8fc..b1af9c670af 100644 --- a/src/EFCore/ChangeTracking/EntryCurrentValueComparer`.cs +++ b/src/EFCore/ChangeTracking/EntryCurrentValueComparer`.cs @@ -19,7 +19,7 @@ namespace Microsoft.EntityFrameworkCore.ChangeTracking /// /// /// - /// For more information, see EF Core value comparers. + /// See EF Core value comparers for more information. /// /// The type of the property. public sealed class EntryCurrentValueComparer : IComparer, IEqualityComparer diff --git a/src/EFCore/ChangeTracking/GeometryValueComparer.cs b/src/EFCore/ChangeTracking/GeometryValueComparer.cs index 98e7371ad4f..924714897da 100644 --- a/src/EFCore/ChangeTracking/GeometryValueComparer.cs +++ b/src/EFCore/ChangeTracking/GeometryValueComparer.cs @@ -10,7 +10,7 @@ namespace Microsoft.EntityFrameworkCore.ChangeTracking /// Value snapshotting and comparison logic for NetTopologySuite.Geometries.Geometry instances. /// /// - /// For more information, see EF Core value comparers. + /// See EF Core value comparers for more information. /// public class GeometryValueComparer : ValueComparer { diff --git a/src/EFCore/ChangeTracking/IDependentKeyValueFactory.cs b/src/EFCore/ChangeTracking/IDependentKeyValueFactory.cs index 0fe6a20e239..98286b05b57 100644 --- a/src/EFCore/ChangeTracking/IDependentKeyValueFactory.cs +++ b/src/EFCore/ChangeTracking/IDependentKeyValueFactory.cs @@ -19,7 +19,7 @@ namespace Microsoft.EntityFrameworkCore.ChangeTracking /// /// /// - /// For more information, Implementation of database providers and extensions. + /// See Implementation of database providers and extensions for more information. /// /// The generic type of the key. public interface IDependentKeyValueFactory diff --git a/src/EFCore/ChangeTracking/IEntityEntryGraphIterator.cs b/src/EFCore/ChangeTracking/IEntityEntryGraphIterator.cs index 93112c97ab9..228432bd5c5 100644 --- a/src/EFCore/ChangeTracking/IEntityEntryGraphIterator.cs +++ b/src/EFCore/ChangeTracking/IEntityEntryGraphIterator.cs @@ -19,7 +19,7 @@ namespace Microsoft.EntityFrameworkCore.ChangeTracking /// /// /// - /// For more information, Tracking entities in EF Core. + /// See Tracking entities in EF Core for more information. /// public interface IEntityEntryGraphIterator { diff --git a/src/EFCore/ChangeTracking/IPrincipalKeyValueFactory.cs b/src/EFCore/ChangeTracking/IPrincipalKeyValueFactory.cs index ef005c5ef0d..6b4e1c3e8bd 100644 --- a/src/EFCore/ChangeTracking/IPrincipalKeyValueFactory.cs +++ b/src/EFCore/ChangeTracking/IPrincipalKeyValueFactory.cs @@ -18,7 +18,7 @@ namespace Microsoft.EntityFrameworkCore.ChangeTracking /// /// /// - /// For more information, Implementation of database providers and extensions. + /// See Implementation of database providers and extensions for more information. /// /// The key type. public interface IPrincipalKeyValueFactory diff --git a/src/EFCore/ChangeTracking/LocalView.cs b/src/EFCore/ChangeTracking/LocalView.cs index f97b32e8d51..8753d4105c6 100644 --- a/src/EFCore/ChangeTracking/LocalView.cs +++ b/src/EFCore/ChangeTracking/LocalView.cs @@ -47,7 +47,7 @@ namespace Microsoft.EntityFrameworkCore.ChangeTracking /// /// /// - /// For more information, Local views of tracked entities in EF Core. + /// See Local views of tracked entities in EF Core for more information. /// /// The type of the entity in the local view. public class LocalView : @@ -86,7 +86,7 @@ public LocalView(DbSet set) /// Use this for WPF data binding. /// /// - /// For more information, Local views of tracked entities in EF Core. + /// See Local views of tracked entities in EF Core for more information. /// /// The collection. public virtual ObservableCollection ToObservableCollection() @@ -202,7 +202,7 @@ IEnumerator IEnumerable.GetEnumerator() /// /// /// - /// For more information, Local views of tracked entities in EF Core. + /// See Local views of tracked entities in EF Core for more information. /// /// The item to start tracking. public virtual void Add(TEntity item) @@ -249,10 +249,10 @@ public virtual void Add(TEntity item) /// /// /// - /// For more information, Local views of tracked entities in EF Core. + /// See Local views of tracked entities in EF Core for more information. /// /// - /// For more information, Local views of tracked entities in EF Core. + /// See Local views of tracked entities in EF Core for more information. /// public virtual void Clear() { @@ -267,7 +267,7 @@ public virtual void Clear() /// marked as Deleted. /// /// - /// For more information, Local views of tracked entities in EF Core. + /// See Local views of tracked entities in EF Core for more information. /// /// The entity to check. /// if the entity is being tracked by the context and has not been marked as Deleted. @@ -283,7 +283,7 @@ public virtual bool Contains(TEntity item) /// not marked as Deleted. /// /// - /// For more information, Local views of tracked entities in EF Core. + /// See Local views of tracked entities in EF Core for more information. /// /// The array into which to copy entities. /// The index into the array to start copying. @@ -307,7 +307,7 @@ public virtual void CopyTo(TEntity[] array, int arrayIndex) /// /// /// - /// For more information, Local views of tracked entities in EF Core. + /// See Local views of tracked entities in EF Core for more information. /// /// The entity to delete. /// if the entity was being tracked and was not already Deleted. @@ -384,7 +384,7 @@ private void StateManagerChangedHandler(InternalEntityEntry entry, EntityState p /// as Deleted. /// /// - /// For more information, Local views of tracked entities in EF Core. + /// See Local views of tracked entities in EF Core for more information. /// public virtual int Count { @@ -466,7 +466,7 @@ private void OnCollectionChanged(NotifyCollectionChangedAction action, object it /// Use this for WinForms data binding. /// /// - /// For more information, Local views of tracked entities in EF Core. + /// See Local views of tracked entities in EF Core for more information. /// /// The binding list. public virtual BindingList ToBindingList() diff --git a/src/EFCore/ChangeTracking/MemberEntry.cs b/src/EFCore/ChangeTracking/MemberEntry.cs index 8a8f5bf46b7..1a3b660a1b5 100644 --- a/src/EFCore/ChangeTracking/MemberEntry.cs +++ b/src/EFCore/ChangeTracking/MemberEntry.cs @@ -25,7 +25,7 @@ namespace Microsoft.EntityFrameworkCore.ChangeTracking /// /// /// - /// For more information, Accessing tracked entities in EF Core. + /// See Accessing tracked entities in EF Core for more information. /// public abstract class MemberEntry : IInfrastructure { @@ -68,7 +68,7 @@ protected MemberEntry(InternalEntityEntry internalEntry, IPropertyBase metadata) /// /// /// - /// For more information, Accessing tracked entities in EF Core. + /// See Accessing tracked entities in EF Core for more information. /// public abstract bool IsModified { get; set; } @@ -83,7 +83,7 @@ protected MemberEntry(InternalEntityEntry internalEntry, IPropertyBase metadata) /// for the context to detect the change. /// /// - /// For more information, Accessing tracked entities in EF Core. + /// See Accessing tracked entities in EF Core for more information. /// public virtual object? CurrentValue { @@ -95,7 +95,7 @@ public virtual object? CurrentValue /// The to which this member belongs. /// /// - /// For more information, Accessing tracked entities in EF Core. + /// See Accessing tracked entities in EF Core for more information. /// /// An entry for the entity that owns this member. public virtual EntityEntry EntityEntry diff --git a/src/EFCore/ChangeTracking/NavigationEntry.cs b/src/EFCore/ChangeTracking/NavigationEntry.cs index 3c4e7512a54..831e236a85f 100644 --- a/src/EFCore/ChangeTracking/NavigationEntry.cs +++ b/src/EFCore/ChangeTracking/NavigationEntry.cs @@ -24,8 +24,8 @@ namespace Microsoft.EntityFrameworkCore.ChangeTracking /// /// /// - /// For more information, Accessing tracked entities in EF Core - /// and Loading related entities. + /// See Accessing tracked entities in EF Core + /// and Loading related entities for more information. /// public abstract class NavigationEntry : MemberEntry { @@ -103,8 +103,8 @@ private static INavigationBase GetNavigation(InternalEntityEntry internalEntry, /// /// /// - /// For more information, Accessing tracked entities in EF Core - /// and Loading related entities. + /// See Accessing tracked entities in EF Core + /// and Loading related entities for more information. /// public abstract void Load(); @@ -117,13 +117,13 @@ private static INavigationBase GetNavigation(InternalEntityEntry internalEntry, /// Note that entities that are already being tracked are not overwritten with new data from the database. /// /// - /// Multiple active operations on the same context instance are not supported. Use to ensure + /// Multiple active operations on the same context instance are not supported. Use to ensure /// that any asynchronous operations have completed before calling another method on this context. /// /// /// - /// For more information, Accessing tracked entities in EF Core - /// and Loading related entities. + /// See Accessing tracked entities in EF Core + /// and Loading related entities for more information. /// /// A to observe while waiting for the task to complete. /// A task that represents the asynchronous operation. @@ -141,8 +141,8 @@ private static INavigationBase GetNavigation(InternalEntityEntry internalEntry, /// /// /// - /// For more information, Accessing tracked entities in EF Core - /// and Loading related entities. + /// See Accessing tracked entities in EF Core + /// and Loading related entities for more information. /// /// The query to load related entities. public abstract IQueryable Query(); @@ -168,8 +168,8 @@ private static INavigationBase GetNavigation(InternalEntityEntry internalEntry, /// /// /// - /// For more information, Accessing tracked entities in EF Core - /// and Loading related entities. + /// See Accessing tracked entities in EF Core + /// and Loading related entities for more information. /// /// /// if all the related entities are loaded or the IsLoaded has been explicitly set to true. diff --git a/src/EFCore/ChangeTracking/ObservableHashSet.cs b/src/EFCore/ChangeTracking/ObservableHashSet.cs index eb884754763..ab8d5c5c161 100644 --- a/src/EFCore/ChangeTracking/ObservableHashSet.cs +++ b/src/EFCore/ChangeTracking/ObservableHashSet.cs @@ -15,7 +15,7 @@ namespace Microsoft.EntityFrameworkCore.ChangeTracking /// for a collection navigation property. /// /// - /// For more information, Local views of tracked entities in EF Core. + /// See Local views of tracked entities in EF Core for more information. /// /// The type of elements in the hash set. public class ObservableHashSet diff --git a/src/EFCore/ChangeTracking/PropertyEntry.cs b/src/EFCore/ChangeTracking/PropertyEntry.cs index c16688ee67a..2691cf7dccf 100644 --- a/src/EFCore/ChangeTracking/PropertyEntry.cs +++ b/src/EFCore/ChangeTracking/PropertyEntry.cs @@ -17,7 +17,7 @@ namespace Microsoft.EntityFrameworkCore.ChangeTracking /// /// /// - /// For more information, Accessing tracked entities in EF Core. + /// See Accessing tracked entities in EF Core for more information. /// public class PropertyEntry : MemberEntry { @@ -51,7 +51,7 @@ public PropertyEntry(InternalEntityEntry internalEntry, IProperty property) /// is called. /// /// - /// For more information, Accessing tracked entities in EF Core. + /// See Accessing tracked entities in EF Core for more information. /// public override bool IsModified { @@ -65,7 +65,7 @@ public override bool IsModified /// is called. /// /// - /// For more information, Accessing tracked entities in EF Core. + /// See Accessing tracked entities in EF Core for more information. /// public virtual bool IsTemporary { @@ -90,7 +90,7 @@ public virtual bool IsTemporary /// saved with a different context instance. /// /// - /// For more information, Accessing tracked entities in EF Core. + /// See Accessing tracked entities in EF Core for more information. /// public virtual object? OriginalValue { diff --git a/src/EFCore/ChangeTracking/PropertyEntry`.cs b/src/EFCore/ChangeTracking/PropertyEntry`.cs index 700e02dc930..e5da48fd3e6 100644 --- a/src/EFCore/ChangeTracking/PropertyEntry`.cs +++ b/src/EFCore/ChangeTracking/PropertyEntry`.cs @@ -17,7 +17,7 @@ namespace Microsoft.EntityFrameworkCore.ChangeTracking /// /// /// - /// For more information, Accessing tracked entities in EF Core. + /// See Accessing tracked entities in EF Core for more information. /// /// The type of the entity the property belongs to. /// The type of the property. @@ -53,7 +53,7 @@ public PropertyEntry(InternalEntityEntry internalEntry, IProperty property) /// /// An entry for the entity that owns this member. /// - /// For more information, Accessing tracked entities in EF Core. + /// See Accessing tracked entities in EF Core for more information. /// public new virtual EntityEntry EntityEntry => new(InternalEntry); @@ -64,7 +64,7 @@ public PropertyEntry(InternalEntityEntry internalEntry, IProperty property) /// for the context to detect the change. /// /// - /// For more information, Accessing tracked entities in EF Core. + /// See Accessing tracked entities in EF Core for more information. /// public new virtual TProperty CurrentValue { @@ -79,7 +79,7 @@ public PropertyEntry(InternalEntityEntry internalEntry, IProperty property) /// saved with a different context instance. /// /// - /// For more information, Accessing tracked entities in EF Core. + /// See Accessing tracked entities in EF Core for more information. /// public new virtual TProperty OriginalValue { diff --git a/src/EFCore/ChangeTracking/PropertyValues.cs b/src/EFCore/ChangeTracking/PropertyValues.cs index 02975e4c2a3..9f9db927350 100644 --- a/src/EFCore/ChangeTracking/PropertyValues.cs +++ b/src/EFCore/ChangeTracking/PropertyValues.cs @@ -25,7 +25,7 @@ namespace Microsoft.EntityFrameworkCore.ChangeTracking /// /// /// - /// For more information, Accessing tracked entities in EF Core. + /// See Accessing tracked entities in EF Core for more information. /// public abstract class PropertyValues { @@ -55,7 +55,7 @@ protected PropertyValues(InternalEntityEntry internalEntry) /// values from this object. /// /// - /// For more information, Accessing tracked entities in EF Core. + /// See Accessing tracked entities in EF Core for more information. /// /// The values of this object copied into a new entity instance. public abstract object ToObject(); @@ -72,7 +72,7 @@ protected PropertyValues(InternalEntityEntry internalEntry) /// /// /// - /// For more information, Accessing tracked entities in EF Core. + /// See Accessing tracked entities in EF Core for more information. /// /// The object to read values from. public abstract void SetValues(object obj); @@ -82,7 +82,7 @@ protected PropertyValues(InternalEntityEntry internalEntry) /// reflected in this object and vice versa. /// /// - /// For more information, Accessing tracked entities in EF Core. + /// See Accessing tracked entities in EF Core for more information. /// /// A clone of this object. public abstract PropertyValues Clone(); @@ -98,7 +98,7 @@ protected PropertyValues(InternalEntityEntry internalEntry) /// /// /// - /// For more information, Accessing tracked entities in EF Core. + /// See Accessing tracked entities in EF Core for more information. /// /// The object from which values should be copied. public abstract void SetValues(PropertyValues propertyValues); @@ -113,7 +113,7 @@ protected PropertyValues(InternalEntityEntry internalEntry) /// /// /// - /// For more information, Accessing tracked entities in EF Core. + /// See Accessing tracked entities in EF Core for more information. /// /// The dictionary to read values from. public virtual void SetValues(IDictionary values) @@ -133,7 +133,7 @@ public virtual void SetValues(IDictionary values) /// Gets the properties for which this object is storing values. /// /// - /// For more information, Accessing tracked entities in EF Core. + /// See Accessing tracked entities in EF Core for more information. /// /// The properties. public abstract IReadOnlyList Properties { get; } @@ -165,7 +165,7 @@ public virtual IEntityType EntityType /// typed to the type of the generic parameter. /// /// - /// For more information, Accessing tracked entities in EF Core. + /// See Accessing tracked entities in EF Core for more information. /// /// The type of the property. /// The property name. @@ -178,7 +178,7 @@ public virtual IEntityType EntityType /// If property exists it return the value into the out parameter, otherwise the default value of TValue /// /// - /// For more information, Accessing tracked entities in EF Core. + /// See Accessing tracked entities in EF Core for more information. /// /// The type of the property. /// The property name. @@ -202,7 +202,7 @@ public virtual bool TryGetValue(string propertyName, out TValue value) /// typed to the type of the generic parameter. /// /// - /// For more information, Accessing tracked entities in EF Core. + /// See Accessing tracked entities in EF Core for more information. /// /// The type of the property. /// The property. diff --git a/src/EFCore/ChangeTracking/ReferenceEntry.cs b/src/EFCore/ChangeTracking/ReferenceEntry.cs index b566c1efcd3..d877302961d 100644 --- a/src/EFCore/ChangeTracking/ReferenceEntry.cs +++ b/src/EFCore/ChangeTracking/ReferenceEntry.cs @@ -25,8 +25,8 @@ namespace Microsoft.EntityFrameworkCore.ChangeTracking /// /// /// - /// For more information, Accessing tracked entities in EF Core - /// and Loading related entities. + /// See Accessing tracked entities in EF Core + /// and Loading related entities for more information. /// public class ReferenceEntry : NavigationEntry { @@ -92,8 +92,8 @@ private void LocalDetectChanges() /// /// /// - /// For more information, Accessing tracked entities in EF Core - /// and Loading related entities. + /// See Accessing tracked entities in EF Core + /// and Loading related entities for more information. /// public override void Load() { @@ -112,13 +112,13 @@ public override void Load() /// Note that entities that are already being tracked are not overwritten with new data from the database. /// /// - /// Multiple active operations on the same context instance are not supported. Use to ensure + /// Multiple active operations on the same context instance are not supported. Use to ensure /// that any asynchronous operations have completed before calling another method on this context. /// /// /// - /// For more information, Accessing tracked entities in EF Core - /// and Loading related entities. + /// See Accessing tracked entities in EF Core + /// and Loading related entities for more information. /// /// A to observe while waiting for the task to complete. /// A task that represents the asynchronous operation. @@ -139,8 +139,8 @@ public override Task LoadAsync(CancellationToken cancellationToken = default) /// /// /// - /// For more information, Accessing tracked entities in EF Core - /// and Loading related entities. + /// See Accessing tracked entities in EF Core + /// and Loading related entities for more information. /// /// The query to load related entities. public override IQueryable Query() @@ -152,8 +152,9 @@ public override IQueryable Query() /// when is called. /// /// - /// For more information, Accessing tracked entities in EF Core - /// and Changing foreign keys and navigations. + /// See Accessing tracked entities in EF Core + /// and Changing foreign keys and navigations + /// for more information. /// public override bool IsModified { @@ -223,7 +224,7 @@ private bool AnyFkPropertiesModified(INavigation navigation, object? relatedEnti /// The of the entity this navigation targets. /// /// - /// For more information, Accessing tracked entities in EF Core. + /// See Accessing tracked entities in EF Core for more information. /// /// An entry for the entity that this navigation targets. public virtual EntityEntry? TargetEntry diff --git a/src/EFCore/ChangeTracking/ReferenceEntry`.cs b/src/EFCore/ChangeTracking/ReferenceEntry`.cs index 896c46c37ba..d651e83e563 100644 --- a/src/EFCore/ChangeTracking/ReferenceEntry`.cs +++ b/src/EFCore/ChangeTracking/ReferenceEntry`.cs @@ -19,8 +19,8 @@ namespace Microsoft.EntityFrameworkCore.ChangeTracking /// /// /// - /// For more information, Accessing tracked entities in EF Core - /// and Loading related entities. + /// See Accessing tracked entities in EF Core + /// and Loading related entities for more information. /// /// The type of the entity the property belongs to. /// The type of the property. @@ -56,7 +56,7 @@ public ReferenceEntry(InternalEntityEntry internalEntry, INavigation navigation) /// The to which this member belongs. /// /// - /// For more information, Accessing tracked entities in EF Core. + /// See Accessing tracked entities in EF Core for more information. /// /// An entry for the entity that owns this member. public new virtual EntityEntry EntityEntry @@ -66,7 +66,7 @@ public ReferenceEntry(InternalEntityEntry internalEntry, INavigation navigation) /// The of the entity this navigation targets. /// /// - /// For more information, Accessing tracked entities in EF Core. + /// See Accessing tracked entities in EF Core for more information. /// /// An entry for the entity that owns this navigation targets. public new virtual EntityEntry? TargetEntry @@ -84,8 +84,9 @@ public ReferenceEntry(InternalEntityEntry internalEntry, INavigation navigation) /// for the context to detect the change. /// /// - /// For more information, Accessing tracked entities in EF Core - /// and Changing foreign keys and navigations. + /// See Accessing tracked entities in EF Core + /// and Changing foreign keys and navigations + /// for more information. /// public new virtual TProperty? CurrentValue { @@ -104,8 +105,8 @@ public ReferenceEntry(InternalEntityEntry internalEntry, INavigation navigation) /// /// /// - /// For more information, Accessing tracked entities in EF Core - /// and Loading related entities. + /// See Accessing tracked entities in EF Core + /// and Loading related entities for more information. /// public new virtual IQueryable Query() => (IQueryable)base.Query(); diff --git a/src/EFCore/ChangeTracking/ValueComparer.cs b/src/EFCore/ChangeTracking/ValueComparer.cs index 286907f6953..9d0fce6103e 100644 --- a/src/EFCore/ChangeTracking/ValueComparer.cs +++ b/src/EFCore/ChangeTracking/ValueComparer.cs @@ -28,7 +28,7 @@ namespace Microsoft.EntityFrameworkCore.ChangeTracking /// /// /// - /// For more information, see EF Core value comparers. + /// See EF Core value comparers for more information. /// public abstract class ValueComparer : IEqualityComparer, IEqualityComparer { diff --git a/src/EFCore/ChangeTracking/ValueComparerExtensions.cs b/src/EFCore/ChangeTracking/ValueComparerExtensions.cs index cd8f5502bad..43688a2a3be 100644 --- a/src/EFCore/ChangeTracking/ValueComparerExtensions.cs +++ b/src/EFCore/ChangeTracking/ValueComparerExtensions.cs @@ -7,7 +7,7 @@ namespace Microsoft.EntityFrameworkCore.ChangeTracking /// Extension methods for . /// /// - /// For more information, see EF Core value comparers. + /// See EF Core value comparers for more information. /// public static class ValueComparerExtensions { diff --git a/src/EFCore/ChangeTracking/ValueComparer`.cs b/src/EFCore/ChangeTracking/ValueComparer`.cs index a0a5ba75044..75b6d76e94c 100644 --- a/src/EFCore/ChangeTracking/ValueComparer`.cs +++ b/src/EFCore/ChangeTracking/ValueComparer`.cs @@ -26,7 +26,7 @@ namespace Microsoft.EntityFrameworkCore.ChangeTracking /// /// /// - /// For more information, see EF Core value comparers. + /// See EF Core value comparers for more information. /// /// The type. public class ValueComparer : ValueComparer, IEqualityComparer diff --git a/src/EFCore/ChangeTrackingStrategy.cs b/src/EFCore/ChangeTrackingStrategy.cs index 21868019b68..0ec9e22fae3 100644 --- a/src/EFCore/ChangeTrackingStrategy.cs +++ b/src/EFCore/ChangeTrackingStrategy.cs @@ -10,7 +10,7 @@ namespace Microsoft.EntityFrameworkCore /// Indicates how the context detects changes to properties for an instance of the entity type. /// /// - /// For more information, see Change detection and notifications. + /// Ssee Change detection and notifications for more information. /// public enum ChangeTrackingStrategy { diff --git a/src/EFCore/DbContext.cs b/src/EFCore/DbContext.cs index 357be422315..f41e03f3fd2 100644 --- a/src/EFCore/DbContext.cs +++ b/src/EFCore/DbContext.cs @@ -32,7 +32,7 @@ namespace Microsoft.EntityFrameworkCore /// Entity Framework Core does not support multiple parallel operations being run on the same DbContext instance. This /// includes both parallel execution of async queries and any explicit concurrent use from multiple threads. /// Therefore, always await async calls immediately, or use separate DbContext instances for operations that execute - /// in parallel. See https://aka.ms/efcore-docs-threading for more information. + /// in parallel. See Avoiding DbContext threading issues for more information. /// /// /// @@ -54,11 +54,10 @@ namespace Microsoft.EntityFrameworkCore /// is discovered by convention, you can override the method. /// /// - /// For more information, see - /// DbContext lifetime, configuration, and initialization, + /// See DbContext lifetime, configuration, and initialization, /// Querying data with EF Core, /// Changing tracking, and - /// Saving data with EF Core. + /// Saving data with EF Core for more information. /// /// public class DbContext : @@ -93,8 +92,8 @@ public class DbContext : /// /// /// - /// For more information, - /// DbContext lifetime, configuration, and initialization. + /// See DbContext lifetime, configuration, and initialization + /// for more information. /// protected DbContext() : this(new DbContextOptions()) @@ -109,9 +108,8 @@ protected DbContext() /// /// /// - /// For more information, - /// DbContext lifetime, configuration, and initialization and - /// Using DbContextOptions. + /// See DbContext lifetime, configuration, and initialization and + /// Using DbContextOptions for more information. /// /// The options for this context. public DbContext(DbContextOptions options) @@ -157,7 +155,7 @@ public virtual DatabaseFacade Database /// Provides access to information and operations for entity instances this context is tracking. /// /// - /// For more information, EF Core change tracking. + /// See EF Core change tracking for more information. /// public virtual ChangeTracker ChangeTracker => _changeTracker ??= InternalServiceProvider.GetRequiredService().Create(); @@ -167,7 +165,7 @@ public virtual ChangeTracker ChangeTracker /// May not include all the information necessary to initialize the database. /// /// - /// For more information, see Modeling entity types and relationships. + /// See Modeling entity types and relationships for more information. /// public virtual IModel Model { @@ -321,12 +319,12 @@ object IDbSetCache.GetOrAddSet(IDbSetSource source, string entityTypeName, Type /// Entity Framework Core does not support multiple parallel operations being run on the same DbContext instance. This /// includes both parallel execution of async queries and any explicit concurrent use from multiple threads. /// Therefore, always await async calls immediately, or use separate DbContext instances for operations that execute - /// in parallel. See https://aka.ms/efcore-docs-threading for more information. + /// in parallel. See Avoiding DbContext threading issues for more information. /// /// /// - /// For more information, see Querying data with EF Core and - /// Changing tracking. + /// See Querying data with EF Core and + /// Changing tracking for more information. /// /// The type of entity for which a set should be returned. /// A set for the given entity type. @@ -344,9 +342,9 @@ public virtual DbSet Set() /// /// /// - /// For more information, see Querying data with EF Core, + /// See Querying data with EF Core, /// Changing tracking, and - /// Shared entity types. + /// Shared entity types for more information. /// /// The name for the shared-type entity type to use. /// The type of entity for which a set should be returned. @@ -476,8 +474,8 @@ private void CheckDisposed() /// /// /// - /// For more information, see - /// DbContext lifetime, configuration, and initialization. + /// See DbContext lifetime, configuration, and initialization + /// for more information. /// /// /// A builder used to create or modify options for this context. Databases (and other extensions) @@ -496,7 +494,7 @@ protected internal virtual void OnConfiguring(DbContextOptionsBuilder optionsBui /// then this method will not be run. /// /// - /// For more information, see Pre-convention model building in EF Core. + /// See Pre-convention model building in EF Core for more information. /// /// /// The builder being used to set defaults and configure conventions that will be used to build the model for this context. @@ -516,7 +514,7 @@ protected internal virtual void ConfigureConventions(ModelConfigurationBuilder c /// then this method will not be run. /// /// - /// For more information, see Modeling entity types and relationships. + /// See Modeling entity types and relationships for more information. /// /// /// @@ -541,11 +539,11 @@ protected internal virtual void OnModelCreating(ModelBuilder modelBuilder) /// Entity Framework Core does not support multiple parallel operations being run on the same DbContext instance. This /// includes both parallel execution of async queries and any explicit concurrent use from multiple threads. /// Therefore, always await async calls immediately, or use separate DbContext instances for operations that execute - /// in parallel. See https://aka.ms/efcore-docs-threading for more information. + /// in parallel. See Avoiding DbContext threading issues for more information. /// /// /// - /// For more information, see Saving data in EF Core. + /// Ssee Saving data in EF Core for more information. /// /// /// The number of state entries written to the database. @@ -574,11 +572,11 @@ public virtual int SaveChanges() /// Entity Framework Core does not support multiple parallel operations being run on the same DbContext instance. This /// includes both parallel execution of async queries and any explicit concurrent use from multiple threads. /// Therefore, always await async calls immediately, or use separate DbContext instances for operations that execute - /// in parallel. See https://aka.ms/efcore-docs-threading for more information. + /// in parallel. See Avoiding DbContext threading issues for more information. /// /// /// - /// For more information, see Saving data in EF Core. + /// Ssee Saving data in EF Core for more information. /// /// /// Indicates whether is called after the changes have @@ -666,11 +664,11 @@ private void TryDetectChanges(EntityEntry entry) /// Entity Framework Core does not support multiple parallel operations being run on the same DbContext instance. This /// includes both parallel execution of async queries and any explicit concurrent use from multiple threads. /// Therefore, always await async calls immediately, or use separate DbContext instances for operations that execute - /// in parallel. See https://aka.ms/efcore-docs-threading for more information. + /// in parallel. See Avoiding DbContext threading issues for more information. /// /// /// - /// For more information, see Saving data in EF Core. + /// Ssee Saving data in EF Core for more information. /// /// A to observe while waiting for the task to complete. /// @@ -702,11 +700,11 @@ public virtual Task SaveChangesAsync(CancellationToken cancellationToken = /// Entity Framework Core does not support multiple parallel operations being run on the same DbContext instance. This /// includes both parallel execution of async queries and any explicit concurrent use from multiple threads. /// Therefore, always await async calls immediately, or use separate DbContext instances for operations that execute - /// in parallel. See https://aka.ms/efcore-docs-threading for more information. + /// in parallel. See Avoiding DbContext threading issues for more information. /// /// /// - /// For more information, see Saving data in EF Core. + /// Ssee Saving data in EF Core for more information. /// /// /// Indicates whether is called after the changes have @@ -780,8 +778,8 @@ await DbContextDependencies.UpdateLogger.OptimisticConcurrencyExceptionAsync(thi /// An event fired at the beginning of a call to or /// /// - /// For more information, see Saving data in EF Core and - /// EF Core events. + /// See Saving data in EF Core and + /// EF Core events for more information. /// public event EventHandler? SavingChanges; @@ -789,8 +787,8 @@ await DbContextDependencies.UpdateLogger.OptimisticConcurrencyExceptionAsync(thi /// An event fired at the end of a call to or /// /// - /// For more information, see Saving data in EF Core and - /// EF Core events. + /// See Saving data in EF Core and + /// EF Core events for more information. /// public event EventHandler? SavedChanges; @@ -798,8 +796,8 @@ await DbContextDependencies.UpdateLogger.OptimisticConcurrencyExceptionAsync(thi /// An event fired if a call to or fails with an exception. /// /// - /// For more information, see Saving data in EF Core and - /// EF Core events. + /// See Saving data in EF Core and + /// EF Core events for more information. /// public event EventHandler? SaveChangesFailed; @@ -953,8 +951,8 @@ private IEnumerable GetResettableServices() /// Releases the allocated resources for this context. /// /// - /// For more information, - /// DbContext lifetime, configuration, and initialization. + /// See DbContext lifetime, configuration, and initialization + /// for more information. /// public virtual void Dispose() { @@ -1003,11 +1001,20 @@ private bool DisposeSync(bool leaseActive, bool contextDisposed) } /// - /// Releases the allocated resources for this context. + /// + /// Releases the allocated resources for this context. + /// + /// + /// Entity Framework Core does not support multiple parallel operations being run on the same DbContext instance. This + /// includes both parallel execution of async queries and any explicit concurrent use from multiple threads. + /// Therefore, always await async calls immediately, or use separate DbContext instances for operations that execute + /// in parallel. See Avoiding DbContext threading issues + /// for more information. + /// /// /// - /// For more information, - /// DbContext lifetime, configuration, and initialization. + /// See DbContext lifetime, configuration, and initialization + /// for more information. /// public virtual async ValueTask DisposeAsync() { @@ -1025,7 +1032,7 @@ public virtual async ValueTask DisposeAsync() /// access to change tracking information and operations for the entity. /// /// - /// For more information, Accessing tracked entities in EF Core. + /// See Accessing tracked entities in EF Core for more information. /// /// The type of the entity. /// The entity to get the entry for. @@ -1059,7 +1066,7 @@ private EntityEntry EntryWithoutDetectChanges(TEntity entity) /// /// /// - /// For more information, Accessing tracked entities in EF Core. + /// See Accessing tracked entities in EF Core for more information. /// /// The entity to get the entry for. /// The entry for the given entity. @@ -1127,7 +1134,7 @@ private Task SetEntityStateAsync( /// /// /// - /// For more information, EF Core change tracking. + /// See EF Core change tracking for more information. /// /// The type of the entity. /// The entity to add. @@ -1154,9 +1161,16 @@ public virtual EntityEntry Add(TEntity entity) /// 'Microsoft.EntityFrameworkCore.Metadata.SqlServerValueGenerationStrategy.SequenceHiLo', /// to access the database asynchronously. For all other cases the non async method should be used. /// + /// + /// Entity Framework Core does not support multiple parallel operations being run on the same DbContext instance. This + /// includes both parallel execution of async queries and any explicit concurrent use from multiple threads. + /// Therefore, always await async calls immediately, or use separate DbContext instances for operations that execute + /// in parallel. See Avoiding DbContext threading issues + /// for more information. + /// /// /// - /// For more information, EF Core change tracking. + /// See EF Core change tracking for more information. /// /// The type of the entity. /// The entity to add. @@ -1212,7 +1226,7 @@ await SetEntityStateAsync(entry.GetInfrastructure(), EntityState.Added, cancella /// /// /// - /// For more information, EF Core change tracking. + /// See EF Core change tracking for more information. /// /// The type of the entity. /// The entity to attach. @@ -1258,7 +1272,7 @@ public virtual EntityEntry Attach(TEntity entity) /// /// /// - /// For more information, EF Core change tracking. + /// See EF Core change tracking for more information. /// /// The type of the entity. /// The entity to update. @@ -1293,7 +1307,7 @@ public virtual EntityEntry Update(TEntity entity) /// Use to set the state of only a single entity. /// /// - /// For more information, EF Core change tracking. + /// See EF Core change tracking for more information. /// /// /// The type of the entity. @@ -1349,7 +1363,7 @@ private EntityEntry SetEntityState( /// /// /// - /// For more information, EF Core change tracking. + /// See EF Core change tracking for more information. /// /// The entity to add. /// @@ -1377,9 +1391,16 @@ public virtual EntityEntry Add(object entity) /// 'Microsoft.EntityFrameworkCore.Metadata.SqlServerValueGenerationStrategy.SequenceHiLo', /// to access the database asynchronously. For all other cases the non async method should be used. /// + /// + /// Entity Framework Core does not support multiple parallel operations being run on the same DbContext instance. This + /// includes both parallel execution of async queries and any explicit concurrent use from multiple threads. + /// Therefore, always await async calls immediately, or use separate DbContext instances for operations that execute + /// in parallel. See Avoiding DbContext threading issues + /// for more information. + /// /// /// - /// For more information, EF Core change tracking. + /// See EF Core change tracking for more information. /// /// The entity to add. /// A to observe while waiting for the task to complete. @@ -1433,7 +1454,7 @@ await SetEntityStateAsync(entry.GetInfrastructure(), EntityState.Added, cancella /// /// /// - /// For more information, EF Core change tracking. + /// See EF Core change tracking for more information. /// /// The entity to attach. /// @@ -1477,7 +1498,7 @@ public virtual EntityEntry Attach(object entity) /// /// /// - /// For more information, EF Core change tracking. + /// See EF Core change tracking for more information. /// /// The entity to update. /// @@ -1510,7 +1531,7 @@ public virtual EntityEntry Update(object entity) /// Use to set the state of only a single entity. /// /// - /// For more information, EF Core change tracking. + /// See EF Core change tracking for more information. /// /// /// The entity to remove. @@ -1556,8 +1577,9 @@ private EntityEntry SetEntityState(object entity, EntityState entityState) /// be inserted into the database when is called. /// /// - /// For more information, EF Core change tracking - /// and Using AddRange, UpdateRange, AttachRange, and RemoveRange. + /// See EF Core change tracking + /// and Using AddRange, UpdateRange, AttachRange, and RemoveRange + /// for more information. /// /// The entities to add. public virtual void AddRange(params object[] entities) @@ -1578,10 +1600,18 @@ public virtual void AddRange(params object[] entities) /// 'Microsoft.EntityFrameworkCore.Metadata.SqlServerValueGenerationStrategy.SequenceHiLo', /// to access the database asynchronously. For all other cases the non async method should be used. /// + /// + /// Entity Framework Core does not support multiple parallel operations being run on the same DbContext instance. This + /// includes both parallel execution of async queries and any explicit concurrent use from multiple threads. + /// Therefore, always await async calls immediately, or use separate DbContext instances for operations that execute + /// in parallel. See Avoiding DbContext threading issues + /// for more information. + /// /// /// - /// For more information, EF Core change tracking - /// and Using AddRange, UpdateRange, AttachRange, and RemoveRange. + /// See EF Core change tracking + /// and Using AddRange, UpdateRange, AttachRange, and RemoveRange + /// for more information. /// /// The entities to add. /// A task that represents the asynchronous operation. @@ -1622,8 +1652,9 @@ public virtual Task AddRangeAsync(params object[] entities) /// /// /// - /// For more information, EF Core change tracking - /// and Using AddRange, UpdateRange, AttachRange, and RemoveRange. + /// See EF Core change tracking + /// and Using AddRange, UpdateRange, AttachRange, and RemoveRange + /// for more information. /// /// The entities to attach. public virtual void AttachRange(params object[] entities) @@ -1663,8 +1694,9 @@ public virtual void AttachRange(params object[] entities) /// /// /// - /// For more information, EF Core change tracking - /// and Using AddRange, UpdateRange, AttachRange, and RemoveRange. + /// See EF Core change tracking + /// and Using AddRange, UpdateRange, AttachRange, and RemoveRange + /// for more information. /// /// The entities to update. public virtual void UpdateRange(params object[] entities) @@ -1691,8 +1723,9 @@ public virtual void UpdateRange(params object[] entities) /// /// /// - /// For more information, EF Core change tracking - /// and Using AddRange, UpdateRange, AttachRange, and RemoveRange. + /// See EF Core change tracking + /// and Using AddRange, UpdateRange, AttachRange, and RemoveRange + /// for more information. /// /// The entities to remove. public virtual void RemoveRange(params object[] entities) @@ -1718,8 +1751,9 @@ private void SetEntityStates(IEnumerable entities, EntityState entitySta /// be inserted into the database when is called. /// /// - /// For more information, EF Core change tracking - /// and Using AddRange, UpdateRange, AttachRange, and RemoveRange. + /// See EF Core change tracking + /// and Using AddRange, UpdateRange, AttachRange, and RemoveRange + /// for more information. /// /// The entities to add. public virtual void AddRange(IEnumerable entities) @@ -1740,10 +1774,18 @@ public virtual void AddRange(IEnumerable entities) /// 'Microsoft.EntityFrameworkCore.Metadata.SqlServerValueGenerationStrategy.SequenceHiLo', /// to access the database asynchronously. For all other cases the non async method should be used. /// + /// + /// Entity Framework Core does not support multiple parallel operations being run on the same DbContext instance. This + /// includes both parallel execution of async queries and any explicit concurrent use from multiple threads. + /// Therefore, always await async calls immediately, or use separate DbContext instances for operations that execute + /// in parallel. See Avoiding DbContext threading issues + /// for more information. + /// /// /// - /// For more information, EF Core change tracking - /// and Using AddRange, UpdateRange, AttachRange, and RemoveRange. + /// See EF Core change tracking + /// and Using AddRange, UpdateRange, AttachRange, and RemoveRange + /// for more information. /// /// The entities to add. /// A to observe while waiting for the task to complete. @@ -1799,8 +1841,9 @@ await SetEntityStateAsync( /// /// /// - /// For more information, EF Core change tracking - /// and Using AddRange, UpdateRange, AttachRange, and RemoveRange. + /// See EF Core change tracking + /// and Using AddRange, UpdateRange, AttachRange, and RemoveRange + /// for more information. /// /// The entities to attach. public virtual void AttachRange(IEnumerable entities) @@ -1840,8 +1883,9 @@ public virtual void AttachRange(IEnumerable entities) /// /// /// - /// For more information, EF Core change tracking - /// and Using AddRange, UpdateRange, AttachRange, and RemoveRange. + /// See EF Core change tracking + /// and Using AddRange, UpdateRange, AttachRange, and RemoveRange + /// for more information. /// /// The entities to update. public virtual void UpdateRange(IEnumerable entities) @@ -1868,8 +1912,9 @@ public virtual void UpdateRange(IEnumerable entities) /// /// /// - /// For more information, EF Core change tracking - /// and Using AddRange, UpdateRange, AttachRange, and RemoveRange. + /// See EF Core change tracking + /// and Using AddRange, UpdateRange, AttachRange, and RemoveRange + /// for more information. /// /// The entities to remove. public virtual void RemoveRange(IEnumerable entities) @@ -1906,7 +1951,7 @@ public virtual void RemoveRange(IEnumerable entities) /// null is returned. /// /// - /// For more information, Using Find and FindAsync. + /// See Using Find and FindAsync for more information. /// /// The type of entity to find. /// The values of the primary key for the entity to be found. @@ -1919,14 +1964,23 @@ public virtual void RemoveRange(IEnumerable entities) } /// - /// Finds an entity with the given primary key values. If an entity with the given primary key values - /// is being tracked by the context, then it is returned immediately without making a request to the - /// database. Otherwise, a query is made to the database for an entity with the given primary key values - /// and this entity, if found, is attached to the context and returned. If no entity is found, then - /// null is returned. + /// + /// Finds an entity with the given primary key values. If an entity with the given primary key values + /// is being tracked by the context, then it is returned immediately without making a request to the + /// database. Otherwise, a query is made to the database for an entity with the given primary key values + /// and this entity, if found, is attached to the context and returned. If no entity is found, then + /// null is returned. + /// + /// + /// Entity Framework Core does not support multiple parallel operations being run on the same DbContext instance. This + /// includes both parallel execution of async queries and any explicit concurrent use from multiple threads. + /// Therefore, always await async calls immediately, or use separate DbContext instances for operations that execute + /// in parallel. See Avoiding DbContext threading issues + /// for more information. + /// /// /// - /// For more information, Using Find and FindAsync. + /// See Using Find and FindAsync for more information. /// /// The type of entity to find. /// The values of the primary key for the entity to be found. @@ -1939,14 +1993,23 @@ public virtual void RemoveRange(IEnumerable entities) } /// - /// Finds an entity with the given primary key values. If an entity with the given primary key values - /// is being tracked by the context, then it is returned immediately without making a request to the - /// database. Otherwise, a query is made to the database for an entity with the given primary key values - /// and this entity, if found, is attached to the context and returned. If no entity is found, then - /// null is returned. + /// + /// Finds an entity with the given primary key values. If an entity with the given primary key values + /// is being tracked by the context, then it is returned immediately without making a request to the + /// database. Otherwise, a query is made to the database for an entity with the given primary key values + /// and this entity, if found, is attached to the context and returned. If no entity is found, then + /// null is returned. + /// + /// + /// Entity Framework Core does not support multiple parallel operations being run on the same DbContext instance. This + /// includes both parallel execution of async queries and any explicit concurrent use from multiple threads. + /// Therefore, always await async calls immediately, or use separate DbContext instances for operations that execute + /// in parallel. See Avoiding DbContext threading issues + /// for more information. + /// /// /// - /// For more information, Using Find and FindAsync. + /// See Using Find and FindAsync for more information. /// /// The type of entity to find. /// The values of the primary key for the entity to be found. @@ -1971,7 +2034,7 @@ public virtual void RemoveRange(IEnumerable entities) /// null is returned. /// /// - /// For more information, Using Find and FindAsync. + /// See Using Find and FindAsync for more information. /// /// The type of entity to find. /// The values of the primary key for the entity to be found. @@ -1985,14 +2048,23 @@ public virtual void RemoveRange(IEnumerable entities) } /// - /// Finds an entity with the given primary key values. If an entity with the given primary key values - /// is being tracked by the context, then it is returned immediately without making a request to the - /// database. Otherwise, a query is made to the database for an entity with the given primary key values - /// and this entity, if found, is attached to the context and returned. If no entity is found, then - /// null is returned. + /// + /// Finds an entity with the given primary key values. If an entity with the given primary key values + /// is being tracked by the context, then it is returned immediately without making a request to the + /// database. Otherwise, a query is made to the database for an entity with the given primary key values + /// and this entity, if found, is attached to the context and returned. If no entity is found, then + /// null is returned. + /// + /// + /// Entity Framework Core does not support multiple parallel operations being run on the same DbContext instance. This + /// includes both parallel execution of async queries and any explicit concurrent use from multiple threads. + /// Therefore, always await async calls immediately, or use separate DbContext instances for operations that execute + /// in parallel. See Avoiding DbContext threading issues + /// for more information. + /// /// /// - /// For more information, Using Find and FindAsync. + /// See Using Find and FindAsync for more information. /// /// The type of entity to find. /// The values of the primary key for the entity to be found. @@ -2006,14 +2078,23 @@ public virtual void RemoveRange(IEnumerable entities) } /// - /// Finds an entity with the given primary key values. If an entity with the given primary key values - /// is being tracked by the context, then it is returned immediately without making a request to the - /// database. Otherwise, a query is made to the database for an entity with the given primary key values - /// and this entity, if found, is attached to the context and returned. If no entity is found, then - /// null is returned. + /// + /// Finds an entity with the given primary key values. If an entity with the given primary key values + /// is being tracked by the context, then it is returned immediately without making a request to the + /// database. Otherwise, a query is made to the database for an entity with the given primary key values + /// and this entity, if found, is attached to the context and returned. If no entity is found, then + /// null is returned. + /// + /// + /// Entity Framework Core does not support multiple parallel operations being run on the same DbContext instance. This + /// includes both parallel execution of async queries and any explicit concurrent use from multiple threads. + /// Therefore, always await async calls immediately, or use separate DbContext instances for operations that execute + /// in parallel. See Avoiding DbContext threading issues + /// for more information. + /// /// /// - /// For more information, Using Find and FindAsync. + /// See Using Find and FindAsync for more information. /// /// The type of entity to find. /// The values of the primary key for the entity to be found. @@ -2038,7 +2119,7 @@ public virtual void RemoveRange(IEnumerable entities) /// /// /// - /// For more information, Accessing DbContext services. + /// See Accessing DbContext services for more information. /// IServiceProvider IInfrastructure.Instance => InternalServiceProvider; @@ -2047,7 +2128,7 @@ IServiceProvider IInfrastructure.Instance /// Creates a queryable for given query expression. /// /// - /// For more information, see Querying data with EF Core. + /// See Querying data with EF Core for more information. /// /// The result type of the query expression. /// The query expression to create. diff --git a/src/EFCore/DbContextId.cs b/src/EFCore/DbContextId.cs index e38e7866afa..72a3e8ed721 100644 --- a/src/EFCore/DbContextId.cs +++ b/src/EFCore/DbContextId.cs @@ -16,8 +16,8 @@ namespace Microsoft.EntityFrameworkCore /// /// /// - /// For more information, see - /// DbContext lifetime, configuration, and initialization. + /// See DbContext lifetime, configuration, and initialization + /// for more information. /// public readonly struct DbContextId { diff --git a/src/EFCore/DbContextOptions.cs b/src/EFCore/DbContextOptions.cs index b2482d26d22..9a6be25581d 100644 --- a/src/EFCore/DbContextOptions.cs +++ b/src/EFCore/DbContextOptions.cs @@ -18,7 +18,7 @@ namespace Microsoft.EntityFrameworkCore /// to create instances of this class and it is not designed to be directly constructed in your application code. /// /// - /// For more information, see Using DbContextOptions. + /// See Using DbContextOptions for more information. /// public abstract class DbContextOptions : IDbContextOptions { diff --git a/src/EFCore/DbContextOptionsBuilder.cs b/src/EFCore/DbContextOptionsBuilder.cs index 46ac942146f..e13d3806711 100644 --- a/src/EFCore/DbContextOptionsBuilder.cs +++ b/src/EFCore/DbContextOptionsBuilder.cs @@ -31,7 +31,7 @@ namespace Microsoft.EntityFrameworkCore /// /// /// - /// For more information, see Using DbContextOptions. + /// See Using DbContextOptions for more information. /// public class DbContextOptionsBuilder : IDbContextOptionsBuilderInfrastructure { diff --git a/src/EFCore/DbContextOptionsBuilder`.cs b/src/EFCore/DbContextOptionsBuilder`.cs index 0178c6c86a7..9491456185d 100644 --- a/src/EFCore/DbContextOptionsBuilder`.cs +++ b/src/EFCore/DbContextOptionsBuilder`.cs @@ -27,7 +27,7 @@ namespace Microsoft.EntityFrameworkCore /// /// /// - /// For more information, see Using DbContextOptions. + /// See Using DbContextOptions for more information. /// /// The type of context to be configured. public class DbContextOptionsBuilder : DbContextOptionsBuilder diff --git a/src/EFCore/DbContextOptions`.cs b/src/EFCore/DbContextOptions`.cs index b7a67ac599a..07759d3bf9a 100644 --- a/src/EFCore/DbContextOptions`.cs +++ b/src/EFCore/DbContextOptions`.cs @@ -17,7 +17,7 @@ namespace Microsoft.EntityFrameworkCore /// /// The type of the context these options apply to. /// - /// For more information, see Using DbContextOptions. + /// See Using DbContextOptions for more information. /// public class DbContextOptions : DbContextOptions where TContext : DbContext diff --git a/src/EFCore/DbFunctions.cs b/src/EFCore/DbFunctions.cs index b0f944f1ed7..163729229ea 100644 --- a/src/EFCore/DbFunctions.cs +++ b/src/EFCore/DbFunctions.cs @@ -10,7 +10,7 @@ namespace Microsoft.EntityFrameworkCore /// The methods on this class are accessed via . /// /// - /// For more information, see Database functions. + /// See Database functions for more information. /// public sealed class DbFunctions { diff --git a/src/EFCore/DbFunctionsExtensions.cs b/src/EFCore/DbFunctionsExtensions.cs index ef7ffe7309c..4fadb64e152 100644 --- a/src/EFCore/DbFunctionsExtensions.cs +++ b/src/EFCore/DbFunctionsExtensions.cs @@ -11,7 +11,7 @@ namespace Microsoft.EntityFrameworkCore /// The methods on this class are accessed via . /// /// - /// For more information, see Database functions. + /// See Database functions for more information. /// // ReSharper disable once InconsistentNaming public static class DbFunctionsExtensions diff --git a/src/EFCore/DbLoggerCategory.cs b/src/EFCore/DbLoggerCategory.cs index a17920f881f..4ccd4668f8c 100644 --- a/src/EFCore/DbLoggerCategory.cs +++ b/src/EFCore/DbLoggerCategory.cs @@ -19,7 +19,7 @@ namespace Microsoft.EntityFrameworkCore /// /// /// - /// For more information, see Logging, events, and diagnostics. + /// See Logging, events, and diagnostics for more information. /// public static class DbLoggerCategory { diff --git a/src/EFCore/DbSet.cs b/src/EFCore/DbSet.cs index d9d9c905737..f576491978b 100644 --- a/src/EFCore/DbSet.cs +++ b/src/EFCore/DbSet.cs @@ -40,14 +40,13 @@ namespace Microsoft.EntityFrameworkCore /// Entity Framework Core does not support multiple parallel operations being run on the same /// instance. This includes both parallel execution of async queries and any explicit concurrent use from multiple threads. /// Therefore, always await async calls immediately, or use separate DbContext instances for operations that execute - /// in parallel. See https://aka.ms/efcore-docs-threading for more information. + /// in parallel. See Avoiding DbContext threading issues for more information. /// /// /// - /// For more information, see - /// DbContext lifetime, configuration, and initialization, + /// See DbContext lifetime, configuration, and initialization, /// Querying data with EF Core, and - /// Changing tracking. + /// Changing tracking for more information. /// /// The type of entity being operated on by this set. public abstract class DbSet : IQueryable, IInfrastructure, IListSource @@ -62,7 +61,7 @@ public abstract class DbSet : IQueryable, IInfrastructure. /// /// - /// For more information, see Querying data with EF Core. + /// See Querying data with EF Core for more information. /// /// This object. public virtual IAsyncEnumerable AsAsyncEnumerable() @@ -78,7 +77,7 @@ public virtual IAsyncEnumerable AsAsyncEnumerable() /// /// /// - /// For more information, see Querying data with EF Core. + /// See Querying data with EF Core for more information. /// /// This object. public virtual IQueryable AsQueryable() @@ -107,7 +106,7 @@ public virtual IQueryable AsQueryable() /// /// /// - /// For more information, Local views of tracked entities in EF Core. + /// See Local views of tracked entities in EF Core for more information. /// public virtual LocalView Local => throw new NotSupportedException(); @@ -120,7 +119,7 @@ public virtual LocalView Local /// null is returned. /// /// - /// For more information, Using Find and FindAsync. + /// See Using Find and FindAsync for more information. /// /// The values of the primary key for the entity to be found. /// The entity found, or . @@ -135,7 +134,7 @@ public virtual LocalView Local /// null is returned. /// /// - /// For more information, Using Find and FindAsync. + /// See Using Find and FindAsync for more information. /// /// The values of the primary key for the entity to be found. /// The entity found, or . @@ -150,7 +149,7 @@ public virtual LocalView Local /// null is returned. /// /// - /// For more information, Using Find and FindAsync. + /// See Using Find and FindAsync for more information. /// /// The values of the primary key for the entity to be found. /// A to observe while waiting for the task to complete. @@ -170,7 +169,7 @@ public virtual LocalView Local /// /// /// - /// For more information, EF Core change tracking. + /// See EF Core change tracking for more information. /// /// The entity to add. /// @@ -196,7 +195,7 @@ public virtual EntityEntry Add(TEntity entity) /// /// /// - /// For more information, EF Core change tracking. + /// See EF Core change tracking for more information. /// /// The entity to add. /// A to observe while waiting for the task to complete. @@ -241,7 +240,7 @@ public virtual ValueTask> AddAsync( /// /// /// - /// For more information, EF Core change tracking. + /// See EF Core change tracking for more information. /// /// The entity to attach. /// @@ -270,7 +269,7 @@ public virtual EntityEntry Attach(TEntity entity) /// Use to set the state of only a single entity. /// /// - /// For more information, EF Core change tracking. + /// See EF Core change tracking for more information. /// /// /// The entity to remove. @@ -311,7 +310,7 @@ public virtual EntityEntry Remove(TEntity entity) /// /// /// - /// For more information, EF Core change tracking. + /// See EF Core change tracking for more information. /// /// The entity to update. /// @@ -327,8 +326,9 @@ public virtual EntityEntry Update(TEntity entity) /// be inserted into the database when is called. /// /// - /// For more information, EF Core change tracking - /// and Using AddRange, UpdateRange, AttachRange, and RemoveRange. + /// See EF Core change tracking + /// and Using AddRange, UpdateRange, AttachRange, and RemoveRange + /// for more information. /// /// The entities to add. public virtual void AddRange(params TEntity[] entities) @@ -347,8 +347,9 @@ public virtual void AddRange(params TEntity[] entities) /// /// /// - /// For more information, EF Core change tracking - /// and Using AddRange, UpdateRange, AttachRange, and RemoveRange. + /// See EF Core change tracking + /// and Using AddRange, UpdateRange, AttachRange, and RemoveRange + /// for more information. /// /// The entities to add. /// A task that represents the asynchronous operation. @@ -385,8 +386,9 @@ public virtual Task AddRangeAsync(params TEntity[] entities) /// /// /// - /// For more information, EF Core change tracking - /// and Using AddRange, UpdateRange, AttachRange, and RemoveRange. + /// See EF Core change tracking + /// and Using AddRange, UpdateRange, AttachRange, and RemoveRange + /// for more information. /// /// The entities to attach. public virtual void AttachRange(params TEntity[] entities) @@ -409,8 +411,9 @@ public virtual void AttachRange(params TEntity[] entities) /// /// /// - /// For more information, EF Core change tracking - /// and Using AddRange, UpdateRange, AttachRange, and RemoveRange. + /// See EF Core change tracking + /// and Using AddRange, UpdateRange, AttachRange, and RemoveRange + /// for more information. /// /// The entities to remove. public virtual void RemoveRange(params TEntity[] entities) @@ -446,8 +449,9 @@ public virtual void RemoveRange(params TEntity[] entities) /// /// /// - /// For more information, EF Core change tracking - /// and Using AddRange, UpdateRange, AttachRange, and RemoveRange. + /// See EF Core change tracking + /// and Using AddRange, UpdateRange, AttachRange, and RemoveRange + /// for more information. /// /// The entities to update. public virtual void UpdateRange(params TEntity[] entities) @@ -459,8 +463,9 @@ public virtual void UpdateRange(params TEntity[] entities) /// be inserted into the database when is called. /// /// - /// For more information, EF Core change tracking - /// and Using AddRange, UpdateRange, AttachRange, and RemoveRange. + /// See EF Core change tracking + /// and Using AddRange, UpdateRange, AttachRange, and RemoveRange + /// for more information. /// /// The entities to add. public virtual void AddRange(IEnumerable entities) @@ -479,8 +484,9 @@ public virtual void AddRange(IEnumerable entities) /// /// /// - /// For more information, EF Core change tracking - /// and Using AddRange, UpdateRange, AttachRange, and RemoveRange. + /// See EF Core change tracking + /// and Using AddRange, UpdateRange, AttachRange, and RemoveRange + /// for more information. /// /// The entities to add. /// A to observe while waiting for the task to complete. @@ -521,8 +527,9 @@ public virtual Task AddRangeAsync( /// /// /// - /// For more information, EF Core change tracking - /// and Using AddRange, UpdateRange, AttachRange, and RemoveRange. + /// See EF Core change tracking + /// and Using AddRange, UpdateRange, AttachRange, and RemoveRange + /// for more information. /// /// The entities to attach. public virtual void AttachRange(IEnumerable entities) @@ -544,8 +551,9 @@ public virtual void AttachRange(IEnumerable entities) /// This allows any cascading actions to be applied when is called. /// /// - /// For more information, EF Core change tracking - /// and Using AddRange, UpdateRange, AttachRange, and RemoveRange. + /// See EF Core change tracking + /// and Using AddRange, UpdateRange, AttachRange, and RemoveRange + /// for more information. /// /// /// The entities to remove. @@ -582,8 +590,9 @@ public virtual void RemoveRange(IEnumerable entities) /// /// /// - /// For more information, EF Core change tracking - /// and Using AddRange, UpdateRange, AttachRange, and RemoveRange. + /// See EF Core change tracking + /// and Using AddRange, UpdateRange, AttachRange, and RemoveRange + /// for more information. /// /// The entities to update. public virtual void UpdateRange(IEnumerable entities) @@ -594,7 +603,7 @@ public virtual void UpdateRange(IEnumerable entities) /// to load all entities from the database. /// /// - /// For more information, see Querying data with EF Core. + /// See Querying data with EF Core for more information. /// /// The query results. IEnumerator IEnumerable.GetEnumerator() @@ -605,7 +614,7 @@ IEnumerator IEnumerable.GetEnumerator() /// to load all entities from the database. /// /// - /// For more information, see Querying data with EF Core. + /// See Querying data with EF Core for more information. /// /// The query results. IEnumerator IEnumerable.GetEnumerator() @@ -616,7 +625,7 @@ IEnumerator IEnumerable.GetEnumerator() /// the database. /// /// - /// For more information, see Querying data with EF Core. + /// See Querying data with EF Core for more information. /// /// /// A that may be used to cancel the asynchronous iteration. @@ -629,7 +638,7 @@ public virtual IAsyncEnumerator GetAsyncEnumerator(CancellationToken ca /// Gets the IQueryable element type. /// /// - /// For more information, see Querying data with EF Core. + /// See Querying data with EF Core for more information. /// Type IQueryable.ElementType => throw new NotSupportedException(); @@ -638,7 +647,7 @@ Type IQueryable.ElementType /// Gets the IQueryable LINQ Expression. /// /// - /// For more information, see Querying data with EF Core. + /// See Querying data with EF Core for more information. /// Expression IQueryable.Expression => throw new NotSupportedException(); @@ -647,7 +656,7 @@ Expression IQueryable.Expression /// Gets the IQueryable provider. /// /// - /// For more information, see Querying data with EF Core. + /// See Querying data with EF Core for more information. /// IQueryProvider IQueryable.Provider => throw new NotSupportedException(); @@ -662,7 +671,7 @@ IQueryProvider IQueryable.Provider /// /// /// - /// For more information, Accessing DbContext services. + /// See Accessing DbContext services for more information. /// IServiceProvider IInfrastructure.Instance => throw new NotSupportedException(); @@ -684,7 +693,7 @@ IServiceProvider IInfrastructure.Instance /// /// /// - /// For more information, Local views of tracked entities in EF Core. + /// See Local views of tracked entities in EF Core for more information. /// /// Always thrown. /// Never returns, always throws an exception. @@ -698,7 +707,7 @@ IList IListSource.GetList() /// Always returns . /// /// - /// For more information, Local views of tracked entities in EF Core. + /// See Local views of tracked entities in EF Core for more information. /// bool IListSource.ContainsListCollection => false; diff --git a/src/EFCore/DbUpdateConcurrencyException.cs b/src/EFCore/DbUpdateConcurrencyException.cs index 23a12ba586f..e3e31266b03 100644 --- a/src/EFCore/DbUpdateConcurrencyException.cs +++ b/src/EFCore/DbUpdateConcurrencyException.cs @@ -14,7 +14,7 @@ namespace Microsoft.EntityFrameworkCore /// been modified since it was loaded into memory. /// /// - /// For more information, see Handling concurrency conflicts. + /// See Handling concurrency conflicts for more information. /// [Serializable] public class DbUpdateConcurrencyException : DbUpdateException diff --git a/src/EFCore/DbUpdateException.cs b/src/EFCore/DbUpdateException.cs index 98159465660..acbb717d9a5 100644 --- a/src/EFCore/DbUpdateException.cs +++ b/src/EFCore/DbUpdateException.cs @@ -15,7 +15,7 @@ namespace Microsoft.EntityFrameworkCore /// An exception that is thrown when an error is encountered while saving to the database. /// /// - /// For more information, see Saving data with EF Core. + /// See Saving data with EF Core for more information. /// [Serializable] public class DbUpdateException : Exception diff --git a/src/EFCore/DeleteBehavior.cs b/src/EFCore/DeleteBehavior.cs index 95197a15ce6..ab7c5810270 100644 --- a/src/EFCore/DeleteBehavior.cs +++ b/src/EFCore/DeleteBehavior.cs @@ -21,7 +21,7 @@ namespace Microsoft.EntityFrameworkCore /// /// /// - /// For more information, see Cascade delete and deleting orphans in EF Core. + /// See Cascade delete and deleting orphans in EF Core for more information. /// public enum DeleteBehavior { diff --git a/src/EFCore/Design/AttributeCodeFragment.cs b/src/EFCore/Design/AttributeCodeFragment.cs index 3f01492af3c..70a448deb52 100644 --- a/src/EFCore/Design/AttributeCodeFragment.cs +++ b/src/EFCore/Design/AttributeCodeFragment.cs @@ -11,7 +11,7 @@ namespace Microsoft.EntityFrameworkCore.Design /// Represents usage of an attribute. /// /// - /// For more information, Implementation of database providers and extensions. + /// See Implementation of database providers and extensions for more information. /// public class AttributeCodeFragment { diff --git a/src/EFCore/Design/DesignTimeProviderServicesAttribute.cs b/src/EFCore/Design/DesignTimeProviderServicesAttribute.cs index b8ea49748a7..32147cabcfd 100644 --- a/src/EFCore/Design/DesignTimeProviderServicesAttribute.cs +++ b/src/EFCore/Design/DesignTimeProviderServicesAttribute.cs @@ -18,7 +18,7 @@ namespace Microsoft.EntityFrameworkCore.Design /// /// /// - /// For more information, Implementation of database providers and extensions. + /// See Implementation of database providers and extensions for more information. /// [AttributeUsage(AttributeTargets.Assembly)] public sealed class DesignTimeProviderServicesAttribute : Attribute diff --git a/src/EFCore/Design/DesignTimeServicesReferenceAttribute.cs b/src/EFCore/Design/DesignTimeServicesReferenceAttribute.cs index bee25a3f86a..0cb071e26d5 100644 --- a/src/EFCore/Design/DesignTimeServicesReferenceAttribute.cs +++ b/src/EFCore/Design/DesignTimeServicesReferenceAttribute.cs @@ -16,7 +16,7 @@ namespace Microsoft.EntityFrameworkCore.Design /// /// /// - /// For more information, Implementation of database providers and extensions. + /// See Implementation of database providers and extensions for more information. /// [AttributeUsage(AttributeTargets.Assembly, AllowMultiple = true)] public sealed class DesignTimeServicesReferenceAttribute : Attribute diff --git a/src/EFCore/Design/EntityFrameworkDesignServicesBuilder.cs b/src/EFCore/Design/EntityFrameworkDesignServicesBuilder.cs index 2aedd1ed829..95c19c74212 100644 --- a/src/EFCore/Design/EntityFrameworkDesignServicesBuilder.cs +++ b/src/EFCore/Design/EntityFrameworkDesignServicesBuilder.cs @@ -27,7 +27,7 @@ namespace Microsoft.EntityFrameworkCore.Design /// /// /// - /// For more information, Implementation of database providers and extensions. + /// See Implementation of database providers and extensions for more information. /// public class EntityFrameworkDesignServicesBuilder : EntityFrameworkServicesBuilder { diff --git a/src/EFCore/Design/ICSharpHelper.cs b/src/EFCore/Design/ICSharpHelper.cs index 76bd9f4bd20..9caaff072e9 100644 --- a/src/EFCore/Design/ICSharpHelper.cs +++ b/src/EFCore/Design/ICSharpHelper.cs @@ -12,7 +12,7 @@ namespace Microsoft.EntityFrameworkCore.Design /// Helper for generating C# code. /// /// - /// For more information, Implementation of database providers and extensions. + /// See Implementation of database providers and extensions for more information. /// public interface ICSharpHelper { diff --git a/src/EFCore/Design/IDesignTimeDbContextFactory.cs b/src/EFCore/Design/IDesignTimeDbContextFactory.cs index a6eee9ecdfc..4f3adae7cb7 100644 --- a/src/EFCore/Design/IDesignTimeDbContextFactory.cs +++ b/src/EFCore/Design/IDesignTimeDbContextFactory.cs @@ -11,7 +11,7 @@ namespace Microsoft.EntityFrameworkCore.Design /// this interface that are in the startup assembly or the same assembly as the derived context. /// /// - /// For more information, Implementation of database providers and extensions. + /// See Implementation of database providers and extensions for more information. /// /// The type of the context. public interface IDesignTimeDbContextFactory diff --git a/src/EFCore/Design/IDesignTimeServices.cs b/src/EFCore/Design/IDesignTimeServices.cs index 4f9f7d34992..90fd54c6f01 100644 --- a/src/EFCore/Design/IDesignTimeServices.cs +++ b/src/EFCore/Design/IDesignTimeServices.cs @@ -10,7 +10,7 @@ namespace Microsoft.EntityFrameworkCore.Design /// interface that are in the startup assembly. /// /// - /// For more information, Implementation of database providers and extensions. + /// See Implementation of database providers and extensions for more information. /// public interface IDesignTimeServices { diff --git a/src/EFCore/Design/MethodCallCodeFragment.cs b/src/EFCore/Design/MethodCallCodeFragment.cs index 8452a04e098..d5d9386e856 100644 --- a/src/EFCore/Design/MethodCallCodeFragment.cs +++ b/src/EFCore/Design/MethodCallCodeFragment.cs @@ -13,7 +13,7 @@ namespace Microsoft.EntityFrameworkCore.Design /// Represents a call to a method. /// /// - /// For more information, Implementation of database providers and extensions. + /// See Implementation of database providers and extensions for more information. /// public class MethodCallCodeFragment { diff --git a/src/EFCore/Design/NestedClosureCodeFragment.cs b/src/EFCore/Design/NestedClosureCodeFragment.cs index 7a7fd166b19..814b9fc0b8e 100644 --- a/src/EFCore/Design/NestedClosureCodeFragment.cs +++ b/src/EFCore/Design/NestedClosureCodeFragment.cs @@ -10,7 +10,7 @@ namespace Microsoft.EntityFrameworkCore.Design /// Represents a nested closure code fragment. /// /// - /// For more information, Implementation of database providers and extensions. + /// See Implementation of database providers and extensions for more information. /// public class NestedClosureCodeFragment { diff --git a/src/EFCore/Diagnostics/BinaryExpressionEventData.cs b/src/EFCore/Diagnostics/BinaryExpressionEventData.cs index 842d306ef1e..bd828aca23b 100644 --- a/src/EFCore/Diagnostics/BinaryExpressionEventData.cs +++ b/src/EFCore/Diagnostics/BinaryExpressionEventData.cs @@ -12,7 +12,7 @@ namespace Microsoft.EntityFrameworkCore.Diagnostics /// a query expression. /// /// - /// For more information, see Logging, events, and diagnostics. + /// See Logging, events, and diagnostics for more information. /// public class BinaryExpressionEventData : EventData { diff --git a/src/EFCore/Diagnostics/CascadeDeleteEventData.cs b/src/EFCore/Diagnostics/CascadeDeleteEventData.cs index 1708aa16801..e49f3ee572e 100644 --- a/src/EFCore/Diagnostics/CascadeDeleteEventData.cs +++ b/src/EFCore/Diagnostics/CascadeDeleteEventData.cs @@ -13,7 +13,7 @@ namespace Microsoft.EntityFrameworkCore.Diagnostics /// an entity is being deleted because its parent entity has been deleted. /// /// - /// For more information, see Logging, events, and diagnostics. + /// See Logging, events, and diagnostics for more information. /// public class CascadeDeleteEventData : EntityEntryEventData { diff --git a/src/EFCore/Diagnostics/CascadeDeleteOrphanEventData.cs b/src/EFCore/Diagnostics/CascadeDeleteOrphanEventData.cs index ba155a135da..eefb6c01e16 100644 --- a/src/EFCore/Diagnostics/CascadeDeleteOrphanEventData.cs +++ b/src/EFCore/Diagnostics/CascadeDeleteOrphanEventData.cs @@ -14,7 +14,7 @@ namespace Microsoft.EntityFrameworkCore.Diagnostics /// an entity is being deleted because its required relationship to a parent has been severed. /// /// - /// For more information, see Logging, events, and diagnostics. + /// See Logging, events, and diagnostics for more information. /// public class CascadeDeleteOrphanEventData : EntityEntryEventData { diff --git a/src/EFCore/Diagnostics/CollectionChangedEventData.cs b/src/EFCore/Diagnostics/CollectionChangedEventData.cs index 4f9b2b1d7bd..6cbf1c1c2cf 100644 --- a/src/EFCore/Diagnostics/CollectionChangedEventData.cs +++ b/src/EFCore/Diagnostics/CollectionChangedEventData.cs @@ -15,7 +15,7 @@ namespace Microsoft.EntityFrameworkCore.Diagnostics /// a collection navigation property has had entities added and/or removed. /// /// - /// For more information, see Logging, events, and diagnostics. + /// See Logging, events, and diagnostics for more information. /// public class CollectionChangedEventData : NavigationEventData, ICollectionChangedEventData { diff --git a/src/EFCore/Diagnostics/ContextInitializedEventData.cs b/src/EFCore/Diagnostics/ContextInitializedEventData.cs index 556bb6db12e..79e1d7957f2 100644 --- a/src/EFCore/Diagnostics/ContextInitializedEventData.cs +++ b/src/EFCore/Diagnostics/ContextInitializedEventData.cs @@ -10,7 +10,7 @@ namespace Microsoft.EntityFrameworkCore.Diagnostics /// A event payload class for context initialization events. /// /// - /// For more information, see Logging, events, and diagnostics. + /// See Logging, events, and diagnostics for more information. /// public class ContextInitializedEventData : EventData { diff --git a/src/EFCore/Diagnostics/CoreEventId.cs b/src/EFCore/Diagnostics/CoreEventId.cs index 636da7a3f60..6944abf56a4 100644 --- a/src/EFCore/Diagnostics/CoreEventId.cs +++ b/src/EFCore/Diagnostics/CoreEventId.cs @@ -22,7 +22,7 @@ namespace Microsoft.EntityFrameworkCore.Diagnostics /// /// /// - /// For more information, see Logging, events, and diagnostics. + /// See Logging, events, and diagnostics for more information. /// public static class CoreEventId { diff --git a/src/EFCore/Diagnostics/CoreLoggerExtensions.cs b/src/EFCore/Diagnostics/CoreLoggerExtensions.cs index a202a800e39..4011841a73d 100644 --- a/src/EFCore/Diagnostics/CoreLoggerExtensions.cs +++ b/src/EFCore/Diagnostics/CoreLoggerExtensions.cs @@ -35,7 +35,7 @@ namespace Microsoft.EntityFrameworkCore.Diagnostics /// /// /// - /// For more information, Implementation of database providers and extensions. + /// See Implementation of database providers and extensions for more information. /// public static class CoreLoggerExtensions { diff --git a/src/EFCore/Diagnostics/DbContextErrorEventData.cs b/src/EFCore/Diagnostics/DbContextErrorEventData.cs index fd7554d88c0..3fca1db40eb 100644 --- a/src/EFCore/Diagnostics/DbContextErrorEventData.cs +++ b/src/EFCore/Diagnostics/DbContextErrorEventData.cs @@ -11,7 +11,7 @@ namespace Microsoft.EntityFrameworkCore.Diagnostics /// a . /// /// - /// For more information, see Logging, events, and diagnostics. + /// See Logging, events, and diagnostics for more information. /// public class DbContextErrorEventData : DbContextEventData, IErrorEventData { diff --git a/src/EFCore/Diagnostics/DbContextEventData.cs b/src/EFCore/Diagnostics/DbContextEventData.cs index bd0c6a0ca7e..003de121284 100644 --- a/src/EFCore/Diagnostics/DbContextEventData.cs +++ b/src/EFCore/Diagnostics/DbContextEventData.cs @@ -11,7 +11,7 @@ namespace Microsoft.EntityFrameworkCore.Diagnostics /// a . /// /// - /// For more information, see Logging, events, and diagnostics. + /// See Logging, events, and diagnostics for more information. /// public class DbContextEventData : EventData { diff --git a/src/EFCore/Diagnostics/DbContextLoggerOptions.cs b/src/EFCore/Diagnostics/DbContextLoggerOptions.cs index 942ff49bf70..9e1f2ce647b 100644 --- a/src/EFCore/Diagnostics/DbContextLoggerOptions.cs +++ b/src/EFCore/Diagnostics/DbContextLoggerOptions.cs @@ -12,7 +12,7 @@ namespace Microsoft.EntityFrameworkCore.Diagnostics /// and . /// /// - /// For more information, see EF Core simple logging. + /// See EF Core simple logging for more information. /// [Flags] public enum DbContextLoggerOptions diff --git a/src/EFCore/Diagnostics/DbContextTypeErrorEventData.cs b/src/EFCore/Diagnostics/DbContextTypeErrorEventData.cs index f5723a0481d..98c86a2160a 100644 --- a/src/EFCore/Diagnostics/DbContextTypeErrorEventData.cs +++ b/src/EFCore/Diagnostics/DbContextTypeErrorEventData.cs @@ -11,7 +11,7 @@ namespace Microsoft.EntityFrameworkCore.Diagnostics /// a type. /// /// - /// For more information, see Logging, events, and diagnostics. + /// See Logging, events, and diagnostics for more information. /// public class DbContextTypeErrorEventData : DbContextTypeEventData, IErrorEventData { diff --git a/src/EFCore/Diagnostics/DbContextTypeEventData.cs b/src/EFCore/Diagnostics/DbContextTypeEventData.cs index c7212792cc1..b827b11b998 100644 --- a/src/EFCore/Diagnostics/DbContextTypeEventData.cs +++ b/src/EFCore/Diagnostics/DbContextTypeEventData.cs @@ -11,7 +11,7 @@ namespace Microsoft.EntityFrameworkCore.Diagnostics /// a type. /// /// - /// For more information, see Logging, events, and diagnostics. + /// See Logging, events, and diagnostics for more information. /// public class DbContextTypeEventData : EventData { diff --git a/src/EFCore/Diagnostics/EntityEntryEventData.cs b/src/EFCore/Diagnostics/EntityEntryEventData.cs index 3fdd6016fb9..9674e17cb09 100644 --- a/src/EFCore/Diagnostics/EntityEntryEventData.cs +++ b/src/EFCore/Diagnostics/EntityEntryEventData.cs @@ -13,7 +13,7 @@ namespace Microsoft.EntityFrameworkCore.Diagnostics /// a . /// /// - /// For more information, see Logging, events, and diagnostics. + /// See Logging, events, and diagnostics for more information. /// public class EntityEntryEventData : EventData { diff --git a/src/EFCore/Diagnostics/EntityTypeEventData.cs b/src/EFCore/Diagnostics/EntityTypeEventData.cs index c840cd29a6c..71c677f1535 100644 --- a/src/EFCore/Diagnostics/EntityTypeEventData.cs +++ b/src/EFCore/Diagnostics/EntityTypeEventData.cs @@ -13,7 +13,7 @@ namespace Microsoft.EntityFrameworkCore.Diagnostics /// an entity type. /// /// - /// For more information, see Logging, events, and diagnostics. + /// See Logging, events, and diagnostics for more information. /// public class EntityTypeEventData : EventData { diff --git a/src/EFCore/Diagnostics/EventData.cs b/src/EFCore/Diagnostics/EventData.cs index b48a241b899..caf960e8082 100644 --- a/src/EFCore/Diagnostics/EventData.cs +++ b/src/EFCore/Diagnostics/EventData.cs @@ -11,7 +11,7 @@ namespace Microsoft.EntityFrameworkCore.Diagnostics /// A base class for all Entity Framework event payloads. /// /// - /// For more information, see Logging, events, and diagnostics. + /// See Logging, events, and diagnostics for more information. /// public class EventData { diff --git a/src/EFCore/Diagnostics/EventDefinition.cs b/src/EFCore/Diagnostics/EventDefinition.cs index 051f11bdd12..b9629c4be3b 100644 --- a/src/EFCore/Diagnostics/EventDefinition.cs +++ b/src/EFCore/Diagnostics/EventDefinition.cs @@ -12,7 +12,7 @@ namespace Microsoft.EntityFrameworkCore.Diagnostics /// event with reduced allocations. /// /// - /// For more information, Implementation of database providers and extensions. + /// See Implementation of database providers and extensions for more information. /// public class EventDefinition : EventDefinitionBase { diff --git a/src/EFCore/Diagnostics/EventDefinitionBase.cs b/src/EFCore/Diagnostics/EventDefinitionBase.cs index 1ed5d1c1adb..81f3c5b94fd 100644 --- a/src/EFCore/Diagnostics/EventDefinitionBase.cs +++ b/src/EFCore/Diagnostics/EventDefinitionBase.cs @@ -12,7 +12,7 @@ namespace Microsoft.EntityFrameworkCore.Diagnostics /// Base class for event definitions. /// /// - /// For more information, Implementation of database providers and extensions. + /// See Implementation of database providers and extensions for more information. /// public abstract class EventDefinitionBase { diff --git a/src/EFCore/Diagnostics/EventDefinition`.cs b/src/EFCore/Diagnostics/EventDefinition`.cs index 2592ef20531..565f594ad52 100644 --- a/src/EFCore/Diagnostics/EventDefinition`.cs +++ b/src/EFCore/Diagnostics/EventDefinition`.cs @@ -12,7 +12,7 @@ namespace Microsoft.EntityFrameworkCore.Diagnostics /// event with reduced allocations. /// /// - /// For more information, Implementation of database providers and extensions. + /// See Implementation of database providers and extensions for more information. /// public class EventDefinition : EventDefinitionBase { diff --git a/src/EFCore/Diagnostics/EventDefinition``.cs b/src/EFCore/Diagnostics/EventDefinition``.cs index 0a0f2aa9d39..017d45c2558 100644 --- a/src/EFCore/Diagnostics/EventDefinition``.cs +++ b/src/EFCore/Diagnostics/EventDefinition``.cs @@ -12,7 +12,7 @@ namespace Microsoft.EntityFrameworkCore.Diagnostics /// event with reduced allocations. /// /// - /// For more information, Implementation of database providers and extensions. + /// See Implementation of database providers and extensions for more information. /// public class EventDefinition : EventDefinitionBase { diff --git a/src/EFCore/Diagnostics/EventDefinition```.cs b/src/EFCore/Diagnostics/EventDefinition```.cs index c0580014a14..b92903053d3 100644 --- a/src/EFCore/Diagnostics/EventDefinition```.cs +++ b/src/EFCore/Diagnostics/EventDefinition```.cs @@ -12,7 +12,7 @@ namespace Microsoft.EntityFrameworkCore.Diagnostics /// event with reduced allocations. /// /// - /// For more information, Implementation of database providers and extensions. + /// See Implementation of database providers and extensions for more information. /// public class EventDefinition : EventDefinitionBase { diff --git a/src/EFCore/Diagnostics/EventDefinition````.cs b/src/EFCore/Diagnostics/EventDefinition````.cs index f38e1d5169b..5a5d741b736 100644 --- a/src/EFCore/Diagnostics/EventDefinition````.cs +++ b/src/EFCore/Diagnostics/EventDefinition````.cs @@ -12,7 +12,7 @@ namespace Microsoft.EntityFrameworkCore.Diagnostics /// event with reduced allocations. /// /// - /// For more information, Implementation of database providers and extensions. + /// See Implementation of database providers and extensions for more information. /// public class EventDefinition : EventDefinitionBase { diff --git a/src/EFCore/Diagnostics/EventDefinition`````.cs b/src/EFCore/Diagnostics/EventDefinition`````.cs index 0df97d39f79..086149864e8 100644 --- a/src/EFCore/Diagnostics/EventDefinition`````.cs +++ b/src/EFCore/Diagnostics/EventDefinition`````.cs @@ -12,7 +12,7 @@ namespace Microsoft.EntityFrameworkCore.Diagnostics /// event with reduced allocations. /// /// - /// For more information, Implementation of database providers and extensions. + /// See Implementation of database providers and extensions for more information. /// public class EventDefinition : EventDefinitionBase { diff --git a/src/EFCore/Diagnostics/EventDefinition``````.cs b/src/EFCore/Diagnostics/EventDefinition``````.cs index e7ee4dee4d9..7556a2c3409 100644 --- a/src/EFCore/Diagnostics/EventDefinition``````.cs +++ b/src/EFCore/Diagnostics/EventDefinition``````.cs @@ -12,7 +12,7 @@ namespace Microsoft.EntityFrameworkCore.Diagnostics /// event with reduced allocations. /// /// - /// For more information, Implementation of database providers and extensions. + /// See Implementation of database providers and extensions for more information. /// public class EventDefinition : EventDefinitionBase { diff --git a/src/EFCore/Diagnostics/ExecutionStrategyEventData.cs b/src/EFCore/Diagnostics/ExecutionStrategyEventData.cs index 122161261fe..9da628e888f 100644 --- a/src/EFCore/Diagnostics/ExecutionStrategyEventData.cs +++ b/src/EFCore/Diagnostics/ExecutionStrategyEventData.cs @@ -13,7 +13,7 @@ namespace Microsoft.EntityFrameworkCore.Diagnostics /// execution strategy events. /// /// - /// For more information, see Logging, events, and diagnostics. + /// See Logging, events, and diagnostics for more information. /// public class ExecutionStrategyEventData : EventData { diff --git a/src/EFCore/Diagnostics/ExpressionEventData.cs b/src/EFCore/Diagnostics/ExpressionEventData.cs index a41e21309ad..25326575ef3 100644 --- a/src/EFCore/Diagnostics/ExpressionEventData.cs +++ b/src/EFCore/Diagnostics/ExpressionEventData.cs @@ -12,7 +12,7 @@ namespace Microsoft.EntityFrameworkCore.Diagnostics /// a query expression. /// /// - /// For more information, see Logging, events, and diagnostics. + /// See Logging, events, and diagnostics for more information. /// public class ExpressionEventData : EventData { diff --git a/src/EFCore/Diagnostics/FallbackEventDefinition.cs b/src/EFCore/Diagnostics/FallbackEventDefinition.cs index 3c63f9d9414..2c7f908f908 100644 --- a/src/EFCore/Diagnostics/FallbackEventDefinition.cs +++ b/src/EFCore/Diagnostics/FallbackEventDefinition.cs @@ -12,7 +12,7 @@ namespace Microsoft.EntityFrameworkCore.Diagnostics /// special handling. /// /// - /// For more information, Implementation of database providers and extensions. + /// See Implementation of database providers and extensions for more information. /// public class FallbackEventDefinition : EventDefinitionBase { diff --git a/src/EFCore/Diagnostics/ForeignKeyCandidateEventData.cs b/src/EFCore/Diagnostics/ForeignKeyCandidateEventData.cs index a26acdd5fc8..5125d0665f3 100644 --- a/src/EFCore/Diagnostics/ForeignKeyCandidateEventData.cs +++ b/src/EFCore/Diagnostics/ForeignKeyCandidateEventData.cs @@ -13,7 +13,7 @@ namespace Microsoft.EntityFrameworkCore.Diagnostics /// incompatible foreign key properties. /// /// - /// For more information, see Logging, events, and diagnostics. + /// See Logging, events, and diagnostics for more information. /// public class ForeignKeyCandidateEventData : TwoPropertyBaseCollectionsEventData { diff --git a/src/EFCore/Diagnostics/ForeignKeyEventData.cs b/src/EFCore/Diagnostics/ForeignKeyEventData.cs index 1f6596cdb7a..b30c7a36410 100644 --- a/src/EFCore/Diagnostics/ForeignKeyEventData.cs +++ b/src/EFCore/Diagnostics/ForeignKeyEventData.cs @@ -12,7 +12,7 @@ namespace Microsoft.EntityFrameworkCore.Diagnostics /// a foreign key. /// /// - /// For more information, see Logging, events, and diagnostics. + /// See Logging, events, and diagnostics for more information. /// public class ForeignKeyEventData : EventData { diff --git a/src/EFCore/Diagnostics/ICollectionChangedEventData.cs b/src/EFCore/Diagnostics/ICollectionChangedEventData.cs index f93909e5faa..6abb995718b 100644 --- a/src/EFCore/Diagnostics/ICollectionChangedEventData.cs +++ b/src/EFCore/Diagnostics/ICollectionChangedEventData.cs @@ -11,7 +11,7 @@ namespace Microsoft.EntityFrameworkCore.Diagnostics /// a skip collection navigation or a regular collection navigation. /// /// - /// For more information, see Logging, events, and diagnostics. + /// See Logging, events, and diagnostics for more information. /// public interface ICollectionChangedEventData { diff --git a/src/EFCore/Diagnostics/IDbContextLogger.cs b/src/EFCore/Diagnostics/IDbContextLogger.cs index e7b6cfcd218..8585e1e60c8 100644 --- a/src/EFCore/Diagnostics/IDbContextLogger.cs +++ b/src/EFCore/Diagnostics/IDbContextLogger.cs @@ -11,7 +11,7 @@ namespace Microsoft.EntityFrameworkCore.Diagnostics /// Used by /// /// - /// For more information, see EF Core simple logging. + /// See EF Core simple logging for more information. /// public interface IDbContextLogger { diff --git a/src/EFCore/Diagnostics/IDiagnosticsLogger.cs b/src/EFCore/Diagnostics/IDiagnosticsLogger.cs index 8edaa5c22a8..0ab4121a9cb 100644 --- a/src/EFCore/Diagnostics/IDiagnosticsLogger.cs +++ b/src/EFCore/Diagnostics/IDiagnosticsLogger.cs @@ -21,7 +21,7 @@ namespace Microsoft.EntityFrameworkCore.Diagnostics /// /// /// - /// For more information, Implementation of database providers and extensions. + /// See Implementation of database providers and extensions for more information. /// public interface IDiagnosticsLogger { diff --git a/src/EFCore/Diagnostics/IDiagnosticsLogger`.cs b/src/EFCore/Diagnostics/IDiagnosticsLogger`.cs index 54878af2922..08d61f8649c 100644 --- a/src/EFCore/Diagnostics/IDiagnosticsLogger`.cs +++ b/src/EFCore/Diagnostics/IDiagnosticsLogger`.cs @@ -26,7 +26,7 @@ namespace Microsoft.EntityFrameworkCore.Diagnostics /// /// /// - /// For more information, Implementation of database providers and extensions. + /// See Implementation of database providers and extensions for more information. /// public interface IDiagnosticsLogger : IDiagnosticsLogger where TLoggerCategory : LoggerCategory, new() diff --git a/src/EFCore/Diagnostics/IErrorEventData.cs b/src/EFCore/Diagnostics/IErrorEventData.cs index 9951f677f1d..4ad23b2e317 100644 --- a/src/EFCore/Diagnostics/IErrorEventData.cs +++ b/src/EFCore/Diagnostics/IErrorEventData.cs @@ -10,7 +10,7 @@ namespace Microsoft.EntityFrameworkCore.Diagnostics /// error event with an . /// /// - /// For more information, see Logging, events, and diagnostics. + /// See Logging, events, and diagnostics for more information. /// public interface IErrorEventData { diff --git a/src/EFCore/Diagnostics/IInterceptor.cs b/src/EFCore/Diagnostics/IInterceptor.cs index dffb2dc25b9..aa268ee90d5 100644 --- a/src/EFCore/Diagnostics/IInterceptor.cs +++ b/src/EFCore/Diagnostics/IInterceptor.cs @@ -23,7 +23,7 @@ namespace Microsoft.EntityFrameworkCore.Diagnostics /// /// /// - /// For more information, EF Core interceptors. + /// See EF Core interceptors for more information. /// public interface IInterceptor { diff --git a/src/EFCore/Diagnostics/IInterceptorAggregator.cs b/src/EFCore/Diagnostics/IInterceptorAggregator.cs index e5a65e45b27..af16ec03b17 100644 --- a/src/EFCore/Diagnostics/IInterceptorAggregator.cs +++ b/src/EFCore/Diagnostics/IInterceptorAggregator.cs @@ -21,7 +21,7 @@ namespace Microsoft.EntityFrameworkCore.Diagnostics /// /// /// - /// For more information, EF Core interceptors. + /// See EF Core interceptors for more information. /// public interface IInterceptorAggregator { diff --git a/src/EFCore/Diagnostics/IInterceptors.cs b/src/EFCore/Diagnostics/IInterceptors.cs index bd8d20985b2..20469117c54 100644 --- a/src/EFCore/Diagnostics/IInterceptors.cs +++ b/src/EFCore/Diagnostics/IInterceptors.cs @@ -22,7 +22,7 @@ namespace Microsoft.EntityFrameworkCore.Diagnostics /// /// /// - /// For more information, EF Core interceptors. + /// See EF Core interceptors for more information. /// public interface IInterceptors { diff --git a/src/EFCore/Diagnostics/ILoggingOptions.cs b/src/EFCore/Diagnostics/ILoggingOptions.cs index f06c1bba187..e824548f8a4 100644 --- a/src/EFCore/Diagnostics/ILoggingOptions.cs +++ b/src/EFCore/Diagnostics/ILoggingOptions.cs @@ -19,7 +19,7 @@ namespace Microsoft.EntityFrameworkCore.Diagnostics /// /// /// - /// For more information, see Logging, events, and diagnostics. + /// See Logging, events, and diagnostics for more information. /// public interface ILoggingOptions : ISingletonOptions { diff --git a/src/EFCore/Diagnostics/INavigationBaseEventData.cs b/src/EFCore/Diagnostics/INavigationBaseEventData.cs index 1345324c00b..4c550fdb968 100644 --- a/src/EFCore/Diagnostics/INavigationBaseEventData.cs +++ b/src/EFCore/Diagnostics/INavigationBaseEventData.cs @@ -9,7 +9,7 @@ namespace Microsoft.EntityFrameworkCore.Diagnostics /// A common interface for event payload classes that have an . /// /// - /// For more information, see Logging, events, and diagnostics. + /// See Logging, events, and diagnostics for more information. /// public interface INavigationBaseEventData { diff --git a/src/EFCore/Diagnostics/ISaveChangesInterceptor.cs b/src/EFCore/Diagnostics/ISaveChangesInterceptor.cs index 13ce1b1a2ad..445a12e1fd9 100644 --- a/src/EFCore/Diagnostics/ISaveChangesInterceptor.cs +++ b/src/EFCore/Diagnostics/ISaveChangesInterceptor.cs @@ -29,7 +29,7 @@ namespace Microsoft.EntityFrameworkCore.Diagnostics /// /// /// - /// For more information, EF Core interceptors. + /// See EF Core interceptors for more information. /// public interface ISaveChangesInterceptor : IInterceptor { diff --git a/src/EFCore/Diagnostics/InterceptionResult.cs b/src/EFCore/Diagnostics/InterceptionResult.cs index 68676be9ed5..94f40555f00 100644 --- a/src/EFCore/Diagnostics/InterceptionResult.cs +++ b/src/EFCore/Diagnostics/InterceptionResult.cs @@ -17,7 +17,7 @@ namespace Microsoft.EntityFrameworkCore.Diagnostics /// /// /// - /// For more information, EF Core interceptors. + /// See EF Core interceptors for more information. /// public readonly struct InterceptionResult { diff --git a/src/EFCore/Diagnostics/InterceptionResult`.cs b/src/EFCore/Diagnostics/InterceptionResult`.cs index 1cd9f5c8702..44841f06221 100644 --- a/src/EFCore/Diagnostics/InterceptionResult`.cs +++ b/src/EFCore/Diagnostics/InterceptionResult`.cs @@ -20,7 +20,7 @@ namespace Microsoft.EntityFrameworkCore.Diagnostics /// /// /// - /// For more information, EF Core interceptors. + /// See EF Core interceptors for more information. /// /// The new result to use. public readonly struct InterceptionResult diff --git a/src/EFCore/Diagnostics/InterceptorAggregator.cs b/src/EFCore/Diagnostics/InterceptorAggregator.cs index e9b9d54e821..3cb67bca7ce 100644 --- a/src/EFCore/Diagnostics/InterceptorAggregator.cs +++ b/src/EFCore/Diagnostics/InterceptorAggregator.cs @@ -12,7 +12,7 @@ namespace Microsoft.EntityFrameworkCore.Diagnostics /// Abstract base class for implementations of the service. /// /// - /// For more information, EF Core interceptors. + /// See EF Core interceptors for more information. /// /// The interceptor type. public abstract class InterceptorAggregator : IInterceptorAggregator diff --git a/src/EFCore/Diagnostics/LazyLoadingEventData.cs b/src/EFCore/Diagnostics/LazyLoadingEventData.cs index 9385d4aaf4f..aba6f80c2dd 100644 --- a/src/EFCore/Diagnostics/LazyLoadingEventData.cs +++ b/src/EFCore/Diagnostics/LazyLoadingEventData.cs @@ -11,7 +11,7 @@ namespace Microsoft.EntityFrameworkCore.Diagnostics /// A event payload class for events from /// /// - /// For more information, see Logging, events, and diagnostics. + /// See Logging, events, and diagnostics for more information. /// public class LazyLoadingEventData : DbContextEventData { diff --git a/src/EFCore/Diagnostics/LoggerCategory.cs b/src/EFCore/Diagnostics/LoggerCategory.cs index a2df159be71..971b7f41886 100644 --- a/src/EFCore/Diagnostics/LoggerCategory.cs +++ b/src/EFCore/Diagnostics/LoggerCategory.cs @@ -10,7 +10,7 @@ namespace Microsoft.EntityFrameworkCore.Diagnostics /// Generic helper class used to implement the property. /// /// - /// For more information, see Logging, events, and diagnostics. + /// See Logging, events, and diagnostics for more information. /// /// The logger category type. public abstract class LoggerCategory diff --git a/src/EFCore/Diagnostics/LoggingDefinitions.cs b/src/EFCore/Diagnostics/LoggingDefinitions.cs index adb17ac7102..aaca3f6969b 100644 --- a/src/EFCore/Diagnostics/LoggingDefinitions.cs +++ b/src/EFCore/Diagnostics/LoggingDefinitions.cs @@ -16,7 +16,7 @@ namespace Microsoft.EntityFrameworkCore.Diagnostics /// /// /// - /// For more information, Implementation of database providers and extensions. + /// See Implementation of database providers and extensions for more information. /// public abstract class LoggingDefinitions { diff --git a/src/EFCore/Diagnostics/NavigationBaseEventData.cs b/src/EFCore/Diagnostics/NavigationBaseEventData.cs index 0294c33e7cd..16a163f6121 100644 --- a/src/EFCore/Diagnostics/NavigationBaseEventData.cs +++ b/src/EFCore/Diagnostics/NavigationBaseEventData.cs @@ -11,7 +11,7 @@ namespace Microsoft.EntityFrameworkCore.Diagnostics /// A event payload class for events that have an . /// /// - /// For more information, see Logging, events, and diagnostics. + /// See Logging, events, and diagnostics for more information. /// public class NavigationBaseEventData : EventData, INavigationBaseEventData { diff --git a/src/EFCore/Diagnostics/NavigationEventData.cs b/src/EFCore/Diagnostics/NavigationEventData.cs index 2f6e73b8ce1..a3f36adfe6c 100644 --- a/src/EFCore/Diagnostics/NavigationEventData.cs +++ b/src/EFCore/Diagnostics/NavigationEventData.cs @@ -11,7 +11,7 @@ namespace Microsoft.EntityFrameworkCore.Diagnostics /// A event payload class for events that have an . /// /// - /// For more information, see Logging, events, and diagnostics. + /// See Logging, events, and diagnostics for more information. /// public class NavigationEventData : EventData, INavigationBaseEventData { diff --git a/src/EFCore/Diagnostics/PropertyChangedEventData.cs b/src/EFCore/Diagnostics/PropertyChangedEventData.cs index a7441f0441f..b31c58e2fec 100644 --- a/src/EFCore/Diagnostics/PropertyChangedEventData.cs +++ b/src/EFCore/Diagnostics/PropertyChangedEventData.cs @@ -14,7 +14,7 @@ namespace Microsoft.EntityFrameworkCore.Diagnostics /// a changed property value. /// /// - /// For more information, see Logging, events, and diagnostics. + /// See Logging, events, and diagnostics for more information. /// public class PropertyChangedEventData : PropertyEventData { diff --git a/src/EFCore/Diagnostics/PropertyEventData.cs b/src/EFCore/Diagnostics/PropertyEventData.cs index 5bf93bcecc2..ee435d01c6a 100644 --- a/src/EFCore/Diagnostics/PropertyEventData.cs +++ b/src/EFCore/Diagnostics/PropertyEventData.cs @@ -12,7 +12,7 @@ namespace Microsoft.EntityFrameworkCore.Diagnostics /// a property. /// /// - /// For more information, see Logging, events, and diagnostics. + /// See Logging, events, and diagnostics for more information. /// public class PropertyEventData : EventData { diff --git a/src/EFCore/Diagnostics/PropertyValueEventData.cs b/src/EFCore/Diagnostics/PropertyValueEventData.cs index 1fa1d5a672b..6422b1c11f8 100644 --- a/src/EFCore/Diagnostics/PropertyValueEventData.cs +++ b/src/EFCore/Diagnostics/PropertyValueEventData.cs @@ -14,7 +14,7 @@ namespace Microsoft.EntityFrameworkCore.Diagnostics /// a property value. /// /// - /// For more information, see Logging, events, and diagnostics. + /// See Logging, events, and diagnostics for more information. /// public class PropertyValueEventData : PropertyEventData { diff --git a/src/EFCore/Diagnostics/QueryExpressionEventData.cs b/src/EFCore/Diagnostics/QueryExpressionEventData.cs index 4dcd4ea3758..85d7cf7ba8b 100644 --- a/src/EFCore/Diagnostics/QueryExpressionEventData.cs +++ b/src/EFCore/Diagnostics/QueryExpressionEventData.cs @@ -13,7 +13,7 @@ namespace Microsoft.EntityFrameworkCore.Diagnostics /// a query expression. /// /// - /// For more information, see Logging, events, and diagnostics. + /// See Logging, events, and diagnostics for more information. /// public class QueryExpressionEventData : EventData { diff --git a/src/EFCore/Diagnostics/ReferenceChangedEventData.cs b/src/EFCore/Diagnostics/ReferenceChangedEventData.cs index 7af6ffe72c7..a59058a7cf3 100644 --- a/src/EFCore/Diagnostics/ReferenceChangedEventData.cs +++ b/src/EFCore/Diagnostics/ReferenceChangedEventData.cs @@ -14,7 +14,7 @@ namespace Microsoft.EntityFrameworkCore.Diagnostics /// a changed property value. /// /// - /// For more information, see Logging, events, and diagnostics. + /// See Logging, events, and diagnostics for more information. /// public class ReferenceChangedEventData : NavigationEventData { diff --git a/src/EFCore/Diagnostics/SaveChangesCompletedEventData.cs b/src/EFCore/Diagnostics/SaveChangesCompletedEventData.cs index a8bef443cab..60c9c140545 100644 --- a/src/EFCore/Diagnostics/SaveChangesCompletedEventData.cs +++ b/src/EFCore/Diagnostics/SaveChangesCompletedEventData.cs @@ -11,7 +11,7 @@ namespace Microsoft.EntityFrameworkCore.Diagnostics /// has completed. /// /// - /// For more information, see Logging, events, and diagnostics. + /// See Logging, events, and diagnostics for more information. /// public class SaveChangesCompletedEventData : DbContextEventData { diff --git a/src/EFCore/Diagnostics/SaveChangesEventData.cs b/src/EFCore/Diagnostics/SaveChangesEventData.cs index 61d20c968b3..1d77b8ac626 100644 --- a/src/EFCore/Diagnostics/SaveChangesEventData.cs +++ b/src/EFCore/Diagnostics/SaveChangesEventData.cs @@ -13,7 +13,7 @@ namespace Microsoft.EntityFrameworkCore.Diagnostics /// specify the entities being saved and the rows affected. /// /// - /// For more information, see Logging, events, and diagnostics. + /// See Logging, events, and diagnostics for more information. /// public class SaveChangesEventData : EventData { diff --git a/src/EFCore/Diagnostics/SaveChangesInterceptor.cs b/src/EFCore/Diagnostics/SaveChangesInterceptor.cs index f9ab30757e8..c88eeaaaa70 100644 --- a/src/EFCore/Diagnostics/SaveChangesInterceptor.cs +++ b/src/EFCore/Diagnostics/SaveChangesInterceptor.cs @@ -14,7 +14,7 @@ namespace Microsoft.EntityFrameworkCore.Diagnostics /// /// /// - /// For more information, EF Core interceptors. + /// See EF Core interceptors for more information. /// public abstract class SaveChangesInterceptor : ISaveChangesInterceptor { diff --git a/src/EFCore/Diagnostics/ServiceProviderDebugInfoEventData.cs b/src/EFCore/Diagnostics/ServiceProviderDebugInfoEventData.cs index c08023a0414..97be960d16d 100644 --- a/src/EFCore/Diagnostics/ServiceProviderDebugInfoEventData.cs +++ b/src/EFCore/Diagnostics/ServiceProviderDebugInfoEventData.cs @@ -12,7 +12,7 @@ namespace Microsoft.EntityFrameworkCore.Diagnostics /// debug information on service provider creation. /// /// - /// For more information, see Logging, events, and diagnostics. + /// See Logging, events, and diagnostics for more information. /// public class ServiceProviderDebugInfoEventData : EventData { diff --git a/src/EFCore/Diagnostics/ServiceProviderEventData.cs b/src/EFCore/Diagnostics/ServiceProviderEventData.cs index 4d0a7891a5b..c068bc82889 100644 --- a/src/EFCore/Diagnostics/ServiceProviderEventData.cs +++ b/src/EFCore/Diagnostics/ServiceProviderEventData.cs @@ -11,7 +11,7 @@ namespace Microsoft.EntityFrameworkCore.Diagnostics /// a container. /// /// - /// For more information, see Logging, events, and diagnostics. + /// See Logging, events, and diagnostics for more information. /// public class ServiceProviderEventData : EventData { diff --git a/src/EFCore/Diagnostics/ServiceProvidersEventData.cs b/src/EFCore/Diagnostics/ServiceProvidersEventData.cs index 99202e988a1..9adced1e7bc 100644 --- a/src/EFCore/Diagnostics/ServiceProvidersEventData.cs +++ b/src/EFCore/Diagnostics/ServiceProvidersEventData.cs @@ -12,7 +12,7 @@ namespace Microsoft.EntityFrameworkCore.Diagnostics /// multiple containers. /// /// - /// For more information, see Logging, events, and diagnostics. + /// See Logging, events, and diagnostics for more information. /// public class ServiceProvidersEventData : EventData { diff --git a/src/EFCore/Diagnostics/SharedDependentEntityEventData.cs b/src/EFCore/Diagnostics/SharedDependentEntityEventData.cs index d086651cb25..e96caddea7b 100644 --- a/src/EFCore/Diagnostics/SharedDependentEntityEventData.cs +++ b/src/EFCore/Diagnostics/SharedDependentEntityEventData.cs @@ -12,7 +12,7 @@ namespace Microsoft.EntityFrameworkCore.Diagnostics /// two instances. /// /// - /// For more information, see Logging, events, and diagnostics. + /// See Logging, events, and diagnostics for more information. /// public class SharedDependentEntityEventData : EventData { diff --git a/src/EFCore/Diagnostics/SkipCollectionChangedEventData.cs b/src/EFCore/Diagnostics/SkipCollectionChangedEventData.cs index cd1a025ff56..c9f43d2fd50 100644 --- a/src/EFCore/Diagnostics/SkipCollectionChangedEventData.cs +++ b/src/EFCore/Diagnostics/SkipCollectionChangedEventData.cs @@ -15,7 +15,7 @@ namespace Microsoft.EntityFrameworkCore.Diagnostics /// a skip collection navigation property has had entities added and/or removed. /// /// - /// For more information, see Logging, events, and diagnostics. + /// See Logging, events, and diagnostics for more information. /// public class SkipCollectionChangedEventData : SkipNavigationEventData, ICollectionChangedEventData { diff --git a/src/EFCore/Diagnostics/SkipNavigationEventData.cs b/src/EFCore/Diagnostics/SkipNavigationEventData.cs index b596d647fe1..5b13ea7357a 100644 --- a/src/EFCore/Diagnostics/SkipNavigationEventData.cs +++ b/src/EFCore/Diagnostics/SkipNavigationEventData.cs @@ -11,7 +11,7 @@ namespace Microsoft.EntityFrameworkCore.Diagnostics /// A event payload class for events that have an . /// /// - /// For more information, see Logging, events, and diagnostics. + /// See Logging, events, and diagnostics for more information. /// public class SkipNavigationEventData : EventData, INavigationBaseEventData { diff --git a/src/EFCore/Diagnostics/StateChangedEventData.cs b/src/EFCore/Diagnostics/StateChangedEventData.cs index 62921494970..1801553fc81 100644 --- a/src/EFCore/Diagnostics/StateChangedEventData.cs +++ b/src/EFCore/Diagnostics/StateChangedEventData.cs @@ -12,7 +12,7 @@ namespace Microsoft.EntityFrameworkCore.Diagnostics /// a change of a tracked entity from one to another. /// /// - /// For more information, see Logging, events, and diagnostics. + /// See Logging, events, and diagnostics for more information. /// public class StateChangedEventData : EntityEntryEventData { diff --git a/src/EFCore/Diagnostics/TwoPropertyBaseCollectionsEventData.cs b/src/EFCore/Diagnostics/TwoPropertyBaseCollectionsEventData.cs index 66f71925cb3..91d10ed1f9d 100644 --- a/src/EFCore/Diagnostics/TwoPropertyBaseCollectionsEventData.cs +++ b/src/EFCore/Diagnostics/TwoPropertyBaseCollectionsEventData.cs @@ -13,7 +13,7 @@ namespace Microsoft.EntityFrameworkCore.Diagnostics /// two property collections. /// /// - /// For more information, see Logging, events, and diagnostics. + /// See Logging, events, and diagnostics for more information. /// public class TwoPropertyBaseCollectionsEventData : EventData { diff --git a/src/EFCore/Diagnostics/TwoUnmappedPropertyCollectionsEventData.cs b/src/EFCore/Diagnostics/TwoUnmappedPropertyCollectionsEventData.cs index 8b2cd4409bc..dc82ec1ff4e 100644 --- a/src/EFCore/Diagnostics/TwoUnmappedPropertyCollectionsEventData.cs +++ b/src/EFCore/Diagnostics/TwoUnmappedPropertyCollectionsEventData.cs @@ -13,7 +13,7 @@ namespace Microsoft.EntityFrameworkCore.Diagnostics /// two unmapped property collections. /// /// - /// For more information, see Logging, events, and diagnostics. + /// See Logging, events, and diagnostics for more information. /// public class TwoUnmappedPropertyCollectionsEventData : EventData { diff --git a/src/EFCore/Diagnostics/UniquifiedPropertyEventData.cs b/src/EFCore/Diagnostics/UniquifiedPropertyEventData.cs index 86ca880fe4f..ce78678c562 100644 --- a/src/EFCore/Diagnostics/UniquifiedPropertyEventData.cs +++ b/src/EFCore/Diagnostics/UniquifiedPropertyEventData.cs @@ -12,7 +12,7 @@ namespace Microsoft.EntityFrameworkCore.Diagnostics /// a property that has been uniquified. /// /// - /// For more information, see Logging, events, and diagnostics. + /// See Logging, events, and diagnostics for more information. /// public class UniquifiedPropertyEventData : PropertyEventData { diff --git a/src/EFCore/Diagnostics/UpdateEntryEventData.cs b/src/EFCore/Diagnostics/UpdateEntryEventData.cs index 1afe40d7a97..3dfc38a95a6 100644 --- a/src/EFCore/Diagnostics/UpdateEntryEventData.cs +++ b/src/EFCore/Diagnostics/UpdateEntryEventData.cs @@ -13,7 +13,7 @@ namespace Microsoft.EntityFrameworkCore.Diagnostics /// an entity update entry. /// /// - /// For more information, see Logging, events, and diagnostics. + /// See Logging, events, and diagnostics for more information. /// public class UpdateEntryEventData : DbContextEventData { diff --git a/src/EFCore/Diagnostics/ValueConverterEventData.cs b/src/EFCore/Diagnostics/ValueConverterEventData.cs index 147e713e0fb..ba80334f50b 100644 --- a/src/EFCore/Diagnostics/ValueConverterEventData.cs +++ b/src/EFCore/Diagnostics/ValueConverterEventData.cs @@ -12,7 +12,7 @@ namespace Microsoft.EntityFrameworkCore.Diagnostics /// a . /// /// - /// For more information, see Logging, events, and diagnostics. + /// See Logging, events, and diagnostics for more information. /// public class ValueConverterEventData : EventData { diff --git a/src/EFCore/Diagnostics/WarningsConfiguration.cs b/src/EFCore/Diagnostics/WarningsConfiguration.cs index 95749703713..be486007659 100644 --- a/src/EFCore/Diagnostics/WarningsConfiguration.cs +++ b/src/EFCore/Diagnostics/WarningsConfiguration.cs @@ -20,7 +20,7 @@ namespace Microsoft.EntityFrameworkCore.Diagnostics /// /// /// - /// For more information, see Configuration for specific messages. + /// See Configuration for specific messages for more information. /// public class WarningsConfiguration { @@ -66,7 +66,7 @@ public virtual WarningBehavior DefaultBehavior /// It is unusual to call this method directly. Instead use . /// /// - /// For more information, see Configuration for specific messages. + /// See Configuration for specific messages for more information. /// /// The option to change. /// A new instance with the option changed. diff --git a/src/EFCore/Diagnostics/WarningsConfigurationBuilder.cs b/src/EFCore/Diagnostics/WarningsConfigurationBuilder.cs index c94743a1ad4..6a386f625f6 100644 --- a/src/EFCore/Diagnostics/WarningsConfigurationBuilder.cs +++ b/src/EFCore/Diagnostics/WarningsConfigurationBuilder.cs @@ -20,7 +20,7 @@ namespace Microsoft.EntityFrameworkCore.Diagnostics /// /// /// - /// For more information, see Configuration for specific messages. + /// See Configuration for specific messages for more information. /// public class WarningsConfigurationBuilder { @@ -48,7 +48,7 @@ public WarningsConfigurationBuilder(DbContextOptionsBuilder optionsBuilder) /// /// /// - /// For more information, see Configuration for specific messages. + /// See Configuration for specific messages for more information. /// /// The desired behavior. /// The same builder instance so that multiple calls can be chained. @@ -66,7 +66,7 @@ public virtual WarningsConfigurationBuilder Default(WarningBehavior warningBehav /// /// /// - /// For more information, see Configuration for specific messages. + /// See Configuration for specific messages for more information. /// /// /// The IDs for events to configure. @@ -91,7 +91,7 @@ public virtual WarningsConfigurationBuilder Throw( /// /// /// - /// For more information, see Configuration for specific messages. + /// See Configuration for specific messages for more information. /// /// /// The IDs for events to configure. @@ -116,7 +116,7 @@ public virtual WarningsConfigurationBuilder Log( /// /// /// - /// For more information, see Configuration for specific messages. + /// See Configuration for specific messages for more information. /// /// /// The event IDs and levels to configure. @@ -141,7 +141,7 @@ public virtual WarningsConfigurationBuilder Log( /// /// /// - /// For more information, see Configuration for specific messages. + /// See Configuration for specific messages for more information. /// /// /// The IDs for events to configure. diff --git a/src/EFCore/EF.cs b/src/EFCore/EF.cs index 81e4682026d..4999d9e18cb 100644 --- a/src/EFCore/EF.cs +++ b/src/EFCore/EF.cs @@ -13,8 +13,8 @@ namespace Microsoft.EntityFrameworkCore /// referencing a shadow state property in a LINQ query. /// /// - /// For more information, see Database functions and - /// see Using EF.Property in EF Core queries. + /// See Database functions and + /// Using EF.Property in EF Core queries for more information. /// // ReSharper disable once InconsistentNaming public static partial class EF @@ -33,7 +33,7 @@ internal static readonly MethodInfo PropertyMethod /// /// /// - /// For more information, see Using EF.Property in EF Core queries. + /// See Using EF.Property in EF Core queries for more information. /// /// /// @@ -63,7 +63,7 @@ public static TProperty Property( /// /// /// - /// For more information, see Database functions. + /// See Database functions for more information. /// public static DbFunctions Functions => DbFunctions.Instance; diff --git a/src/EFCore/EntityState.cs b/src/EFCore/EntityState.cs index 80c0e7d0c6d..57669f06099 100644 --- a/src/EFCore/EntityState.cs +++ b/src/EFCore/EntityState.cs @@ -7,7 +7,7 @@ namespace Microsoft.EntityFrameworkCore /// The state in which an entity is being tracked by a context. /// /// - /// For more information, EF Core change tracking. + /// See EF Core change tracking for more information. /// public enum EntityState { diff --git a/src/EFCore/Extensions/ConventionAnnotatableExtensions.cs b/src/EFCore/Extensions/ConventionAnnotatableExtensions.cs index 9969217132c..9a1fb0b5198 100644 --- a/src/EFCore/Extensions/ConventionAnnotatableExtensions.cs +++ b/src/EFCore/Extensions/ConventionAnnotatableExtensions.cs @@ -2,10 +2,7 @@ // The .NET Foundation licenses this file to you under the MIT license. using System; -using System.Collections.Generic; -using Microsoft.EntityFrameworkCore.Infrastructure; using Microsoft.EntityFrameworkCore.Metadata; -using Microsoft.EntityFrameworkCore.Metadata.Internal; // ReSharper disable once CheckNamespace namespace Microsoft.EntityFrameworkCore diff --git a/src/EFCore/Extensions/EntityFrameworkQueryableExtensions.cs b/src/EFCore/Extensions/EntityFrameworkQueryableExtensions.cs index 9bea35a3136..d4b28f8bc22 100644 --- a/src/EFCore/Extensions/EntityFrameworkQueryableExtensions.cs +++ b/src/EFCore/Extensions/EntityFrameworkQueryableExtensions.cs @@ -33,6 +33,9 @@ public static class EntityFrameworkQueryableExtensions /// This is only typically supported by queries generated by Entity Framework Core. /// /// + /// + /// See Viewing SQL generated by EF Core for more information. + /// /// The query source. /// The query string for debugging. /// is . @@ -51,8 +54,14 @@ public static string ToQueryString(this IQueryable source) /// Asynchronously determines whether a sequence contains any elements. /// /// - /// Multiple active operations on the same context instance are not supported. Use to ensure - /// that any asynchronous operations have completed before calling another method on this context. + /// + /// Multiple active operations on the same context instance are not supported. Use to ensure + /// that any asynchronous operations have completed before calling another method on this context. + /// See Avoiding DbContext threading issues for more information. + /// + /// + /// See Querying data with EF Core for more information. + /// /// /// The type of the elements of . /// An to check for being empty. @@ -76,8 +85,14 @@ public static Task AnyAsync( /// Asynchronously determines whether any element of a sequence satisfies a condition. /// /// - /// Multiple active operations on the same context instance are not supported. Use to ensure - /// that any asynchronous operations have completed before calling another method on this context. + /// + /// Multiple active operations on the same context instance are not supported. Use to ensure + /// that any asynchronous operations have completed before calling another method on this context. + /// See Avoiding DbContext threading issues for more information. + /// + /// + /// See Querying data with EF Core for more information. + /// /// /// The type of the elements of . /// An whose elements to test for a condition. @@ -107,8 +122,14 @@ public static Task AnyAsync( /// Asynchronously determines whether all the elements of a sequence satisfy a condition. /// /// - /// Multiple active operations on the same context instance are not supported. Use to ensure - /// that any asynchronous operations have completed before calling another method on this context. + /// + /// Multiple active operations on the same context instance are not supported. Use to ensure + /// that any asynchronous operations have completed before calling another method on this context. + /// See Avoiding DbContext threading issues for more information. + /// + /// + /// See Querying data with EF Core for more information. + /// /// /// The type of the elements of . /// An whose elements to test for a condition. @@ -142,8 +163,14 @@ public static Task AllAsync( /// Asynchronously returns the number of elements in a sequence. /// /// - /// Multiple active operations on the same context instance are not supported. Use to ensure - /// that any asynchronous operations have completed before calling another method on this context. + /// + /// Multiple active operations on the same context instance are not supported. Use to ensure + /// that any asynchronous operations have completed before calling another method on this context. + /// See Avoiding DbContext threading issues for more information. + /// + /// + /// See Querying data with EF Core for more information. + /// /// /// The type of the elements of . /// An that contains the elements to be counted. @@ -167,8 +194,14 @@ public static Task CountAsync( /// Asynchronously returns the number of elements in a sequence that satisfy a condition. /// /// - /// Multiple active operations on the same context instance are not supported. Use to ensure - /// that any asynchronous operations have completed before calling another method on this context. + /// + /// Multiple active operations on the same context instance are not supported. Use to ensure + /// that any asynchronous operations have completed before calling another method on this context. + /// See Avoiding DbContext threading issues for more information. + /// + /// + /// See Querying data with EF Core for more information. + /// /// /// The type of the elements of . /// An that contains the elements to be counted. @@ -198,8 +231,14 @@ public static Task CountAsync( /// Asynchronously returns a that represents the total number of elements in a sequence. /// /// - /// Multiple active operations on the same context instance are not supported. Use to ensure - /// that any asynchronous operations have completed before calling another method on this context. + /// + /// Multiple active operations on the same context instance are not supported. Use to ensure + /// that any asynchronous operations have completed before calling another method on this context. + /// See Avoiding DbContext threading issues for more information. + /// + /// + /// See Querying data with EF Core for more information. + /// /// /// The type of the elements of . /// An that contains the elements to be counted. @@ -224,8 +263,14 @@ public static Task LongCountAsync( /// that satisfy a condition. /// /// - /// Multiple active operations on the same context instance are not supported. Use to ensure - /// that any asynchronous operations have completed before calling another method on this context. + /// + /// Multiple active operations on the same context instance are not supported. Use to ensure + /// that any asynchronous operations have completed before calling another method on this context. + /// See Avoiding DbContext threading issues for more information. + /// + /// + /// See Querying data with EF Core for more information. + /// /// /// The type of the elements of . /// An that contains the elements to be counted. @@ -259,8 +304,14 @@ public static Task LongCountAsync( /// Asynchronously returns the first element of a sequence. /// /// - /// Multiple active operations on the same context instance are not supported. Use to ensure - /// that any asynchronous operations have completed before calling another method on this context. + /// + /// Multiple active operations on the same context instance are not supported. Use to ensure + /// that any asynchronous operations have completed before calling another method on this context. + /// See Avoiding DbContext threading issues for more information. + /// + /// + /// See Querying data with EF Core for more information. + /// /// /// The type of the elements of . /// An to return the first element of. @@ -285,8 +336,14 @@ public static Task FirstAsync( /// Asynchronously returns the first element of a sequence that satisfies a specified condition. /// /// - /// Multiple active operations on the same context instance are not supported. Use to ensure - /// that any asynchronous operations have completed before calling another method on this context. + /// + /// Multiple active operations on the same context instance are not supported. Use to ensure + /// that any asynchronous operations have completed before calling another method on this context. + /// See Avoiding DbContext threading issues for more information. + /// + /// + /// See Querying data with EF Core for more information. + /// /// /// The type of the elements of . /// An to return the first element of. @@ -327,8 +384,14 @@ public static Task FirstAsync( /// Asynchronously returns the first element of a sequence, or a default value if the sequence contains no elements. /// /// - /// Multiple active operations on the same context instance are not supported. Use to ensure - /// that any asynchronous operations have completed before calling another method on this context. + /// + /// Multiple active operations on the same context instance are not supported. Use to ensure + /// that any asynchronous operations have completed before calling another method on this context. + /// See Avoiding DbContext threading issues for more information. + /// + /// + /// See Querying data with EF Core for more information. + /// /// /// The type of the elements of . /// An to return the first element of. @@ -354,8 +417,14 @@ public static Task FirstAsync( /// or a default value if no such element is found. /// /// - /// Multiple active operations on the same context instance are not supported. Use to ensure - /// that any asynchronous operations have completed before calling another method on this context. + /// + /// Multiple active operations on the same context instance are not supported. Use to ensure + /// that any asynchronous operations have completed before calling another method on this context. + /// See Avoiding DbContext threading issues for more information. + /// + /// + /// See Querying data with EF Core for more information. + /// /// /// The type of the elements of . /// An to return the first element of. @@ -390,8 +459,14 @@ public static Task FirstAsync( /// Asynchronously returns the last element of a sequence. /// /// - /// Multiple active operations on the same context instance are not supported. Use to ensure - /// that any asynchronous operations have completed before calling another method on this context. + /// + /// Multiple active operations on the same context instance are not supported. Use to ensure + /// that any asynchronous operations have completed before calling another method on this context. + /// See Avoiding DbContext threading issues for more information. + /// + /// + /// See Querying data with EF Core for more information. + /// /// /// The type of the elements of . /// An to return the last element of. @@ -416,8 +491,14 @@ public static Task LastAsync( /// Asynchronously returns the last element of a sequence that satisfies a specified condition. /// /// - /// Multiple active operations on the same context instance are not supported. Use to ensure - /// that any asynchronous operations have completed before calling another method on this context. + /// + /// Multiple active operations on the same context instance are not supported. Use to ensure + /// that any asynchronous operations have completed before calling another method on this context. + /// See Avoiding DbContext threading issues for more information. + /// + /// + /// See Querying data with EF Core for more information. + /// /// /// The type of the elements of . /// An to return the last element of. @@ -458,8 +539,14 @@ public static Task LastAsync( /// Asynchronously returns the last element of a sequence, or a default value if the sequence contains no elements. /// /// - /// Multiple active operations on the same context instance are not supported. Use to ensure - /// that any asynchronous operations have completed before calling another method on this context. + /// + /// Multiple active operations on the same context instance are not supported. Use to ensure + /// that any asynchronous operations have completed before calling another method on this context. + /// See Avoiding DbContext threading issues for more information. + /// + /// + /// See Querying data with EF Core for more information. + /// /// /// The type of the elements of . /// An to return the last element of. @@ -485,8 +572,14 @@ public static Task LastAsync( /// or a default value if no such element is found. /// /// - /// Multiple active operations on the same context instance are not supported. Use to ensure - /// that any asynchronous operations have completed before calling another method on this context. + /// + /// Multiple active operations on the same context instance are not supported. Use to ensure + /// that any asynchronous operations have completed before calling another method on this context. + /// See Avoiding DbContext threading issues for more information. + /// + /// + /// See Querying data with EF Core for more information. + /// /// /// The type of the elements of . /// An to return the last element of. @@ -522,8 +615,14 @@ public static Task LastAsync( /// if there is not exactly one element in the sequence. /// /// - /// Multiple active operations on the same context instance are not supported. Use to ensure - /// that any asynchronous operations have completed before calling another method on this context. + /// + /// Multiple active operations on the same context instance are not supported. Use to ensure + /// that any asynchronous operations have completed before calling another method on this context. + /// See Avoiding DbContext threading issues for more information. + /// + /// + /// See Querying data with EF Core for more information. + /// /// /// The type of the elements of . /// An to return the single element of. @@ -559,8 +658,14 @@ public static Task SingleAsync( /// and throws an exception if more than one such element exists. /// /// - /// Multiple active operations on the same context instance are not supported. Use to ensure - /// that any asynchronous operations have completed before calling another method on this context. + /// + /// Multiple active operations on the same context instance are not supported. Use to ensure + /// that any asynchronous operations have completed before calling another method on this context. + /// See Avoiding DbContext threading issues for more information. + /// + /// + /// See Querying data with EF Core for more information. + /// /// /// The type of the elements of . /// An to return the single element of. @@ -608,8 +713,14 @@ public static Task SingleAsync( /// this method throws an exception if there is more than one element in the sequence. /// /// - /// Multiple active operations on the same context instance are not supported. Use to ensure - /// that any asynchronous operations have completed before calling another method on this context. + /// + /// Multiple active operations on the same context instance are not supported. Use to ensure + /// that any asynchronous operations have completed before calling another method on this context. + /// See Avoiding DbContext threading issues for more information. + /// + /// + /// See Querying data with EF Core for more information. + /// /// /// The type of the elements of . /// An to return the single element of. @@ -638,8 +749,14 @@ public static Task SingleAsync( /// satisfies the condition. /// /// - /// Multiple active operations on the same context instance are not supported. Use to ensure - /// that any asynchronous operations have completed before calling another method on this context. + /// + /// Multiple active operations on the same context instance are not supported. Use to ensure + /// that any asynchronous operations have completed before calling another method on this context. + /// See Avoiding DbContext threading issues for more information. + /// + /// + /// See Querying data with EF Core for more information. + /// /// /// The type of the elements of . /// An to return the single element of. @@ -677,8 +794,14 @@ public static Task SingleAsync( /// Asynchronously returns the minimum value of a sequence. /// /// - /// Multiple active operations on the same context instance are not supported. Use to ensure - /// that any asynchronous operations have completed before calling another method on this context. + /// + /// Multiple active operations on the same context instance are not supported. Use to ensure + /// that any asynchronous operations have completed before calling another method on this context. + /// See Avoiding DbContext threading issues for more information. + /// + /// + /// See Querying data with EF Core for more information. + /// /// /// The type of the elements of . /// An that contains the elements to determine the minimum of. @@ -703,8 +826,14 @@ public static Task MinAsync( /// Asynchronously invokes a projection function on each element of a sequence and returns the minimum resulting value. /// /// - /// Multiple active operations on the same context instance are not supported. Use to ensure - /// that any asynchronous operations have completed before calling another method on this context. + /// + /// Multiple active operations on the same context instance are not supported. Use to ensure + /// that any asynchronous operations have completed before calling another method on this context. + /// See Avoiding DbContext threading issues for more information. + /// + /// + /// See Querying data with EF Core for more information. + /// /// /// The type of the elements of . /// @@ -741,8 +870,14 @@ public static Task MinAsync( /// Asynchronously returns the maximum value of a sequence. /// /// - /// Multiple active operations on the same context instance are not supported. Use to ensure - /// that any asynchronous operations have completed before calling another method on this context. + /// + /// Multiple active operations on the same context instance are not supported. Use to ensure + /// that any asynchronous operations have completed before calling another method on this context. + /// See Avoiding DbContext threading issues for more information. + /// + /// + /// See Querying data with EF Core for more information. + /// /// /// The type of the elements of . /// An that contains the elements to determine the maximum of. @@ -767,8 +902,14 @@ public static Task MaxAsync( /// Asynchronously invokes a projection function on each element of a sequence and returns the maximum resulting value. /// /// - /// Multiple active operations on the same context instance are not supported. Use to ensure - /// that any asynchronous operations have completed before calling another method on this context. + /// + /// Multiple active operations on the same context instance are not supported. Use to ensure + /// that any asynchronous operations have completed before calling another method on this context. + /// See Avoiding DbContext threading issues for more information. + /// + /// + /// See Querying data with EF Core for more information. + /// /// /// The type of the elements of . /// @@ -805,8 +946,14 @@ public static Task MaxAsync( /// Asynchronously computes the sum of a sequence of values. /// /// - /// Multiple active operations on the same context instance are not supported. Use to ensure - /// that any asynchronous operations have completed before calling another method on this context. + /// + /// Multiple active operations on the same context instance are not supported. Use to ensure + /// that any asynchronous operations have completed before calling another method on this context. + /// See Avoiding DbContext threading issues for more information. + /// + /// + /// See Querying data with EF Core for more information. + /// /// /// A sequence of values to calculate the sum of. /// A to observe while waiting for the task to complete. @@ -829,8 +976,14 @@ public static Task SumAsync( /// Asynchronously computes the sum of a sequence of values. /// /// - /// Multiple active operations on the same context instance are not supported. Use to ensure - /// that any asynchronous operations have completed before calling another method on this context. + /// + /// Multiple active operations on the same context instance are not supported. Use to ensure + /// that any asynchronous operations have completed before calling another method on this context. + /// See Avoiding DbContext threading issues for more information. + /// + /// + /// See Querying data with EF Core for more information. + /// /// /// A sequence of values to calculate the sum of. /// A to observe while waiting for the task to complete. @@ -855,8 +1008,14 @@ public static Task SumAsync( /// each element of the input sequence. /// /// - /// Multiple active operations on the same context instance are not supported. Use to ensure - /// that any asynchronous operations have completed before calling another method on this context. + /// + /// Multiple active operations on the same context instance are not supported. Use to ensure + /// that any asynchronous operations have completed before calling another method on this context. + /// See Avoiding DbContext threading issues for more information. + /// + /// + /// See Querying data with EF Core for more information. + /// /// /// A sequence of values of type . /// A projection function to apply to each element. @@ -886,8 +1045,14 @@ public static Task SumAsync( /// each element of the input sequence. /// /// - /// Multiple active operations on the same context instance are not supported. Use to ensure - /// that any asynchronous operations have completed before calling another method on this context. + /// + /// Multiple active operations on the same context instance are not supported. Use to ensure + /// that any asynchronous operations have completed before calling another method on this context. + /// See Avoiding DbContext threading issues for more information. + /// + /// + /// See Querying data with EF Core for more information. + /// /// /// A sequence of values of type . /// A projection function to apply to each element. @@ -916,8 +1081,14 @@ public static Task SumAsync( /// Asynchronously computes the sum of a sequence of values. /// /// - /// Multiple active operations on the same context instance are not supported. Use to ensure - /// that any asynchronous operations have completed before calling another method on this context. + /// + /// Multiple active operations on the same context instance are not supported. Use to ensure + /// that any asynchronous operations have completed before calling another method on this context. + /// See Avoiding DbContext threading issues for more information. + /// + /// + /// See Querying data with EF Core for more information. + /// /// /// A sequence of values to calculate the sum of. /// A to observe while waiting for the task to complete. @@ -940,8 +1111,14 @@ public static Task SumAsync( /// Asynchronously computes the sum of a sequence of values. /// /// - /// Multiple active operations on the same context instance are not supported. Use to ensure - /// that any asynchronous operations have completed before calling another method on this context. + /// + /// Multiple active operations on the same context instance are not supported. Use to ensure + /// that any asynchronous operations have completed before calling another method on this context. + /// See Avoiding DbContext threading issues for more information. + /// + /// + /// See Querying data with EF Core for more information. + /// /// /// A sequence of values to calculate the sum of. /// A to observe while waiting for the task to complete. @@ -965,8 +1142,14 @@ public static Task SumAsync( /// each element of the input sequence. /// /// - /// Multiple active operations on the same context instance are not supported. Use to ensure - /// that any asynchronous operations have completed before calling another method on this context. + /// + /// Multiple active operations on the same context instance are not supported. Use to ensure + /// that any asynchronous operations have completed before calling another method on this context. + /// See Avoiding DbContext threading issues for more information. + /// + /// + /// See Querying data with EF Core for more information. + /// /// /// A sequence of values of type . /// A projection function to apply to each element. @@ -995,8 +1178,14 @@ public static Task SumAsync( /// each element of the input sequence. /// /// - /// Multiple active operations on the same context instance are not supported. Use to ensure - /// that any asynchronous operations have completed before calling another method on this context. + /// + /// Multiple active operations on the same context instance are not supported. Use to ensure + /// that any asynchronous operations have completed before calling another method on this context. + /// See Avoiding DbContext threading issues for more information. + /// + /// + /// See Querying data with EF Core for more information. + /// /// /// A sequence of values of type . /// A projection function to apply to each element. @@ -1025,8 +1214,14 @@ public static Task SumAsync( /// Asynchronously computes the sum of a sequence of values. /// /// - /// Multiple active operations on the same context instance are not supported. Use to ensure - /// that any asynchronous operations have completed before calling another method on this context. + /// + /// Multiple active operations on the same context instance are not supported. Use to ensure + /// that any asynchronous operations have completed before calling another method on this context. + /// See Avoiding DbContext threading issues for more information. + /// + /// + /// See Querying data with EF Core for more information. + /// /// /// A sequence of values to calculate the sum of. /// A to observe while waiting for the task to complete. @@ -1049,8 +1244,14 @@ public static Task SumAsync( /// Asynchronously computes the sum of a sequence of values. /// /// - /// Multiple active operations on the same context instance are not supported. Use to ensure - /// that any asynchronous operations have completed before calling another method on this context. + /// + /// Multiple active operations on the same context instance are not supported. Use to ensure + /// that any asynchronous operations have completed before calling another method on this context. + /// See Avoiding DbContext threading issues for more information. + /// + /// + /// See Querying data with EF Core for more information. + /// /// /// A sequence of values to calculate the sum of. /// A to observe while waiting for the task to complete. @@ -1074,8 +1275,14 @@ public static Task SumAsync( /// each element of the input sequence. /// /// - /// Multiple active operations on the same context instance are not supported. Use to ensure - /// that any asynchronous operations have completed before calling another method on this context. + /// + /// Multiple active operations on the same context instance are not supported. Use to ensure + /// that any asynchronous operations have completed before calling another method on this context. + /// See Avoiding DbContext threading issues for more information. + /// + /// + /// See Querying data with EF Core for more information. + /// /// /// A sequence of values of type . /// A projection function to apply to each element. @@ -1105,8 +1312,14 @@ public static Task SumAsync( /// each element of the input sequence. /// /// - /// Multiple active operations on the same context instance are not supported. Use to ensure - /// that any asynchronous operations have completed before calling another method on this context. + /// + /// Multiple active operations on the same context instance are not supported. Use to ensure + /// that any asynchronous operations have completed before calling another method on this context. + /// See Avoiding DbContext threading issues for more information. + /// + /// + /// See Querying data with EF Core for more information. + /// /// /// A sequence of values of type . /// A projection function to apply to each element. @@ -1135,8 +1348,14 @@ public static Task SumAsync( /// Asynchronously computes the sum of a sequence of values. /// /// - /// Multiple active operations on the same context instance are not supported. Use to ensure - /// that any asynchronous operations have completed before calling another method on this context. + /// + /// Multiple active operations on the same context instance are not supported. Use to ensure + /// that any asynchronous operations have completed before calling another method on this context. + /// See Avoiding DbContext threading issues for more information. + /// + /// + /// See Querying data with EF Core for more information. + /// /// /// A sequence of values to calculate the sum of. /// A to observe while waiting for the task to complete. @@ -1159,8 +1378,14 @@ public static Task SumAsync( /// Asynchronously computes the sum of a sequence of values. /// /// - /// Multiple active operations on the same context instance are not supported. Use to ensure - /// that any asynchronous operations have completed before calling another method on this context. + /// + /// Multiple active operations on the same context instance are not supported. Use to ensure + /// that any asynchronous operations have completed before calling another method on this context. + /// See Avoiding DbContext threading issues for more information. + /// + /// + /// See Querying data with EF Core for more information. + /// /// /// A sequence of values to calculate the sum of. /// A to observe while waiting for the task to complete. @@ -1184,8 +1409,14 @@ public static Task SumAsync( /// each element of the input sequence. /// /// - /// Multiple active operations on the same context instance are not supported. Use to ensure - /// that any asynchronous operations have completed before calling another method on this context. + /// + /// Multiple active operations on the same context instance are not supported. Use to ensure + /// that any asynchronous operations have completed before calling another method on this context. + /// See Avoiding DbContext threading issues for more information. + /// + /// + /// See Querying data with EF Core for more information. + /// /// /// A sequence of values of type . /// A projection function to apply to each element. @@ -1215,8 +1446,14 @@ public static Task SumAsync( /// each element of the input sequence. /// /// - /// Multiple active operations on the same context instance are not supported. Use to ensure - /// that any asynchronous operations have completed before calling another method on this context. + /// + /// Multiple active operations on the same context instance are not supported. Use to ensure + /// that any asynchronous operations have completed before calling another method on this context. + /// See Avoiding DbContext threading issues for more information. + /// + /// + /// See Querying data with EF Core for more information. + /// /// /// A sequence of values of type . /// A projection function to apply to each element. @@ -1245,8 +1482,14 @@ public static Task SumAsync( /// Asynchronously computes the sum of a sequence of values. /// /// - /// Multiple active operations on the same context instance are not supported. Use to ensure - /// that any asynchronous operations have completed before calling another method on this context. + /// + /// Multiple active operations on the same context instance are not supported. Use to ensure + /// that any asynchronous operations have completed before calling another method on this context. + /// See Avoiding DbContext threading issues for more information. + /// + /// + /// See Querying data with EF Core for more information. + /// /// /// A sequence of values to calculate the sum of. /// A to observe while waiting for the task to complete. @@ -1269,8 +1512,14 @@ public static Task SumAsync( /// Asynchronously computes the sum of a sequence of values. /// /// - /// Multiple active operations on the same context instance are not supported. Use to ensure - /// that any asynchronous operations have completed before calling another method on this context. + /// + /// Multiple active operations on the same context instance are not supported. Use to ensure + /// that any asynchronous operations have completed before calling another method on this context. + /// See Avoiding DbContext threading issues for more information. + /// + /// + /// See Querying data with EF Core for more information. + /// /// /// A sequence of values to calculate the sum of. /// A to observe while waiting for the task to complete. @@ -1294,8 +1543,14 @@ public static Task SumAsync( /// each element of the input sequence. /// /// - /// Multiple active operations on the same context instance are not supported. Use to ensure - /// that any asynchronous operations have completed before calling another method on this context. + /// + /// Multiple active operations on the same context instance are not supported. Use to ensure + /// that any asynchronous operations have completed before calling another method on this context. + /// See Avoiding DbContext threading issues for more information. + /// + /// + /// See Querying data with EF Core for more information. + /// /// /// A sequence of values of type . /// A projection function to apply to each element. @@ -1325,8 +1580,14 @@ public static Task SumAsync( /// each element of the input sequence. /// /// - /// Multiple active operations on the same context instance are not supported. Use to ensure - /// that any asynchronous operations have completed before calling another method on this context. + /// + /// Multiple active operations on the same context instance are not supported. Use to ensure + /// that any asynchronous operations have completed before calling another method on this context. + /// See Avoiding DbContext threading issues for more information. + /// + /// + /// See Querying data with EF Core for more information. + /// /// /// A sequence of values of type . /// A projection function to apply to each element. @@ -1359,8 +1620,14 @@ public static Task SumAsync( /// Asynchronously computes the average of a sequence of values. /// /// - /// Multiple active operations on the same context instance are not supported. Use to ensure - /// that any asynchronous operations have completed before calling another method on this context. + /// + /// Multiple active operations on the same context instance are not supported. Use to ensure + /// that any asynchronous operations have completed before calling another method on this context. + /// See Avoiding DbContext threading issues for more information. + /// + /// + /// See Querying data with EF Core for more information. + /// /// /// A sequence of values to calculate the average of. /// A to observe while waiting for the task to complete. @@ -1385,8 +1652,14 @@ public static Task AverageAsync( /// Asynchronously computes the average of a sequence of values. /// /// - /// Multiple active operations on the same context instance are not supported. Use to ensure - /// that any asynchronous operations have completed before calling another method on this context. + /// + /// Multiple active operations on the same context instance are not supported. Use to ensure + /// that any asynchronous operations have completed before calling another method on this context. + /// See Avoiding DbContext threading issues for more information. + /// + /// + /// See Querying data with EF Core for more information. + /// /// /// A sequence of values to calculate the average of. /// A to observe while waiting for the task to complete. @@ -1411,8 +1684,14 @@ public static Task AverageAsync( /// by invoking a projection function on each element of the input sequence. /// /// - /// Multiple active operations on the same context instance are not supported. Use to ensure - /// that any asynchronous operations have completed before calling another method on this context. + /// + /// Multiple active operations on the same context instance are not supported. Use to ensure + /// that any asynchronous operations have completed before calling another method on this context. + /// See Avoiding DbContext threading issues for more information. + /// + /// + /// See Querying data with EF Core for more information. + /// /// /// The type of the elements of . /// A sequence of values of type . @@ -1444,8 +1723,14 @@ public static Task AverageAsync( /// by invoking a projection function on each element of the input sequence. /// /// - /// Multiple active operations on the same context instance are not supported. Use to ensure - /// that any asynchronous operations have completed before calling another method on this context. + /// + /// Multiple active operations on the same context instance are not supported. Use to ensure + /// that any asynchronous operations have completed before calling another method on this context. + /// See Avoiding DbContext threading issues for more information. + /// + /// + /// See Querying data with EF Core for more information. + /// /// /// The type of the elements of . /// A sequence of values of type . @@ -1475,8 +1760,14 @@ public static Task AverageAsync( /// Asynchronously computes the average of a sequence of values. /// /// - /// Multiple active operations on the same context instance are not supported. Use to ensure - /// that any asynchronous operations have completed before calling another method on this context. + /// + /// Multiple active operations on the same context instance are not supported. Use to ensure + /// that any asynchronous operations have completed before calling another method on this context. + /// See Avoiding DbContext threading issues for more information. + /// + /// + /// See Querying data with EF Core for more information. + /// /// /// A sequence of values to calculate the average of. /// A to observe while waiting for the task to complete. @@ -1500,8 +1791,14 @@ public static Task AverageAsync( /// Asynchronously computes the average of a sequence of values. /// /// - /// Multiple active operations on the same context instance are not supported. Use to ensure - /// that any asynchronous operations have completed before calling another method on this context. + /// + /// Multiple active operations on the same context instance are not supported. Use to ensure + /// that any asynchronous operations have completed before calling another method on this context. + /// See Avoiding DbContext threading issues for more information. + /// + /// + /// See Querying data with EF Core for more information. + /// /// /// A sequence of values to calculate the average of. /// A to observe while waiting for the task to complete. @@ -1525,8 +1822,14 @@ public static Task AverageAsync( /// by invoking a projection function on each element of the input sequence. /// /// - /// Multiple active operations on the same context instance are not supported. Use to ensure - /// that any asynchronous operations have completed before calling another method on this context. + /// + /// Multiple active operations on the same context instance are not supported. Use to ensure + /// that any asynchronous operations have completed before calling another method on this context. + /// See Avoiding DbContext threading issues for more information. + /// + /// + /// See Querying data with EF Core for more information. + /// /// /// The type of the elements of . /// A sequence of values of type . @@ -1558,8 +1861,14 @@ public static Task AverageAsync( /// by invoking a projection function on each element of the input sequence. /// /// - /// Multiple active operations on the same context instance are not supported. Use to ensure - /// that any asynchronous operations have completed before calling another method on this context. + /// + /// Multiple active operations on the same context instance are not supported. Use to ensure + /// that any asynchronous operations have completed before calling another method on this context. + /// See Avoiding DbContext threading issues for more information. + /// + /// + /// See Querying data with EF Core for more information. + /// /// /// The type of the elements of . /// A sequence of values of type . @@ -1589,8 +1898,14 @@ public static Task AverageAsync( /// Asynchronously computes the average of a sequence of values. /// /// - /// Multiple active operations on the same context instance are not supported. Use to ensure - /// that any asynchronous operations have completed before calling another method on this context. + /// + /// Multiple active operations on the same context instance are not supported. Use to ensure + /// that any asynchronous operations have completed before calling another method on this context. + /// See Avoiding DbContext threading issues for more information. + /// + /// + /// See Querying data with EF Core for more information. + /// /// /// A sequence of values to calculate the average of. /// A to observe while waiting for the task to complete. @@ -1614,8 +1929,14 @@ public static Task AverageAsync( /// Asynchronously computes the average of a sequence of values. /// /// - /// Multiple active operations on the same context instance are not supported. Use to ensure - /// that any asynchronous operations have completed before calling another method on this context. + /// + /// Multiple active operations on the same context instance are not supported. Use to ensure + /// that any asynchronous operations have completed before calling another method on this context. + /// See Avoiding DbContext threading issues for more information. + /// + /// + /// See Querying data with EF Core for more information. + /// /// /// A sequence of values to calculate the average of. /// A to observe while waiting for the task to complete. @@ -1639,8 +1960,14 @@ public static Task AverageAsync( /// by invoking a projection function on each element of the input sequence. /// /// - /// Multiple active operations on the same context instance are not supported. Use to ensure - /// that any asynchronous operations have completed before calling another method on this context. + /// + /// Multiple active operations on the same context instance are not supported. Use to ensure + /// that any asynchronous operations have completed before calling another method on this context. + /// See Avoiding DbContext threading issues for more information. + /// + /// + /// See Querying data with EF Core for more information. + /// /// /// The type of the elements of . /// A sequence of values of type . @@ -1672,8 +1999,14 @@ public static Task AverageAsync( /// by invoking a projection function on each element of the input sequence. /// /// - /// Multiple active operations on the same context instance are not supported. Use to ensure - /// that any asynchronous operations have completed before calling another method on this context. + /// + /// Multiple active operations on the same context instance are not supported. Use to ensure + /// that any asynchronous operations have completed before calling another method on this context. + /// See Avoiding DbContext threading issues for more information. + /// + /// + /// See Querying data with EF Core for more information. + /// /// /// The type of the elements of . /// A sequence of values of type . @@ -1703,8 +2036,14 @@ public static Task AverageAsync( /// Asynchronously computes the average of a sequence of values. /// /// - /// Multiple active operations on the same context instance are not supported. Use to ensure - /// that any asynchronous operations have completed before calling another method on this context. + /// + /// Multiple active operations on the same context instance are not supported. Use to ensure + /// that any asynchronous operations have completed before calling another method on this context. + /// See Avoiding DbContext threading issues for more information. + /// + /// + /// See Querying data with EF Core for more information. + /// /// /// A sequence of values to calculate the average of. /// A to observe while waiting for the task to complete. @@ -1729,8 +2068,14 @@ public static Task AverageAsync( /// Asynchronously computes the average of a sequence of values. /// /// - /// Multiple active operations on the same context instance are not supported. Use to ensure - /// that any asynchronous operations have completed before calling another method on this context. + /// + /// Multiple active operations on the same context instance are not supported. Use to ensure + /// that any asynchronous operations have completed before calling another method on this context. + /// See Avoiding DbContext threading issues for more information. + /// + /// + /// See Querying data with EF Core for more information. + /// /// /// A sequence of values to calculate the average of. /// A to observe while waiting for the task to complete. @@ -1755,8 +2100,14 @@ public static Task AverageAsync( /// by invoking a projection function on each element of the input sequence. /// /// - /// Multiple active operations on the same context instance are not supported. Use to ensure - /// that any asynchronous operations have completed before calling another method on this context. + /// + /// Multiple active operations on the same context instance are not supported. Use to ensure + /// that any asynchronous operations have completed before calling another method on this context. + /// See Avoiding DbContext threading issues for more information. + /// + /// + /// See Querying data with EF Core for more information. + /// /// /// The type of the elements of . /// A sequence of values of type . @@ -1788,8 +2139,14 @@ public static Task AverageAsync( /// by invoking a projection function on each element of the input sequence. /// /// - /// Multiple active operations on the same context instance are not supported. Use to ensure - /// that any asynchronous operations have completed before calling another method on this context. + /// + /// Multiple active operations on the same context instance are not supported. Use to ensure + /// that any asynchronous operations have completed before calling another method on this context. + /// See Avoiding DbContext threading issues for more information. + /// + /// + /// See Querying data with EF Core for more information. + /// /// /// The type of the elements of . /// A sequence of values of type . @@ -1819,8 +2176,14 @@ public static Task AverageAsync( /// Asynchronously computes the average of a sequence of values. /// /// - /// Multiple active operations on the same context instance are not supported. Use to ensure - /// that any asynchronous operations have completed before calling another method on this context. + /// + /// Multiple active operations on the same context instance are not supported. Use to ensure + /// that any asynchronous operations have completed before calling another method on this context. + /// See Avoiding DbContext threading issues for more information. + /// + /// + /// See Querying data with EF Core for more information. + /// /// /// A sequence of values to calculate the average of. /// A to observe while waiting for the task to complete. @@ -1844,8 +2207,14 @@ public static Task AverageAsync( /// Asynchronously computes the average of a sequence of values. /// /// - /// Multiple active operations on the same context instance are not supported. Use to ensure - /// that any asynchronous operations have completed before calling another method on this context. + /// + /// Multiple active operations on the same context instance are not supported. Use to ensure + /// that any asynchronous operations have completed before calling another method on this context. + /// See Avoiding DbContext threading issues for more information. + /// + /// + /// See Querying data with EF Core for more information. + /// /// /// A sequence of values to calculate the average of. /// A to observe while waiting for the task to complete. @@ -1870,8 +2239,14 @@ public static Task AverageAsync( /// by invoking a projection function on each element of the input sequence. /// /// - /// Multiple active operations on the same context instance are not supported. Use to ensure - /// that any asynchronous operations have completed before calling another method on this context. + /// + /// Multiple active operations on the same context instance are not supported. Use to ensure + /// that any asynchronous operations have completed before calling another method on this context. + /// See Avoiding DbContext threading issues for more information. + /// + /// + /// See Querying data with EF Core for more information. + /// /// /// The type of the elements of . /// A sequence of values of type . @@ -1903,8 +2278,14 @@ public static Task AverageAsync( /// by invoking a projection function on each element of the input sequence. /// /// - /// Multiple active operations on the same context instance are not supported. Use to ensure - /// that any asynchronous operations have completed before calling another method on this context. + /// + /// Multiple active operations on the same context instance are not supported. Use to ensure + /// that any asynchronous operations have completed before calling another method on this context. + /// See Avoiding DbContext threading issues for more information. + /// + /// + /// See Querying data with EF Core for more information. + /// /// /// The type of the elements of . /// A sequence of values of type . @@ -1938,8 +2319,14 @@ public static Task AverageAsync( /// Asynchronously determines whether a sequence contains a specified element by using the default equality comparer. /// /// - /// Multiple active operations on the same context instance are not supported. Use to ensure - /// that any asynchronous operations have completed before calling another method on this context. + /// + /// Multiple active operations on the same context instance are not supported. Use to ensure + /// that any asynchronous operations have completed before calling another method on this context. + /// See Avoiding DbContext threading issues for more information. + /// + /// + /// See Querying data with EF Core for more information. + /// /// /// The type of the elements of . /// An to return the single element of. @@ -1975,8 +2362,14 @@ public static Task ContainsAsync( /// asynchronously. /// /// - /// Multiple active operations on the same context instance are not supported. Use to ensure - /// that any asynchronous operations have completed before calling another method on this context. + /// + /// Multiple active operations on the same context instance are not supported. Use to ensure + /// that any asynchronous operations have completed before calling another method on this context. + /// See Avoiding DbContext threading issues for more information. + /// + /// + /// See Querying data with EF Core for more information. + /// /// /// The type of the elements of . /// An to create a list from. @@ -2004,8 +2397,14 @@ public static async Task> ToListAsync( /// Asynchronously creates an array from an by enumerating it asynchronously. /// /// - /// Multiple active operations on the same context instance are not supported. Use to ensure - /// that any asynchronous operations have completed before calling another method on this context. + /// + /// Multiple active operations on the same context instance are not supported. Use to ensure + /// that any asynchronous operations have completed before calling another method on this context. + /// See Avoiding DbContext threading issues for more information. + /// + /// + /// See Querying data with EF Core for more information. + /// /// /// The type of the elements of . /// An to create an array from. @@ -2051,6 +2450,9 @@ internal static readonly MethodInfo NotQuiteIncludeMethodInfo /// cref="ThenInclude{TEntity, TPreviousProperty, TProperty}(IIncludableQueryable{TEntity, IEnumerable{TPreviousProperty}}, Expression{Func{TPreviousProperty, TProperty}})" /> /// after this call. /// + /// + /// See Loading related entities for more information. + /// /// /// /// The following query shows including a single level of related entities: @@ -2146,6 +2548,9 @@ internal static readonly MethodInfo ThenIncludeAfterReferenceMethodInfo /// /// Specifies additional related data to be further included based on a related type that was just included. /// + /// + /// See Loading related entities for more information. + /// /// /// /// The following query shows including a single level of related entities: @@ -2202,6 +2607,9 @@ source.Provider is EntityQueryProvider /// /// Specifies additional related data to be further included based on a related type that was just included. /// + /// + /// See Loading related entities for more information. + /// /// /// /// The following query shows including a single level of related entities: @@ -2291,6 +2699,9 @@ internal static readonly MethodInfo StringIncludeMethodInfo /// specified starting with the type of entity being queried (). Further /// navigation properties to be included can be appended, separated by the '.' character. /// + /// + /// See Loading related entities for more information. + /// /// /// /// The following query shows including a single level of related entities: @@ -2347,6 +2758,9 @@ internal static readonly MethodInfo IgnoreAutoIncludesMethodInfo /// /// Specifies that the current Entity Framework LINQ query should not have any model-level eager loaded navigations applied. /// + /// + /// See Loading related entities for more information. + /// /// The type of entity being queried. /// The source query. /// A new query that will not apply any model-level eager loaded navigations. @@ -2377,6 +2791,9 @@ internal static readonly MethodInfo IgnoreQueryFiltersMethodInfo /// /// Specifies that the current Entity Framework LINQ query should not have any model-level entity query filters applied. /// + /// + /// See EF Core query filters for more information. + /// /// The type of entity being queried. /// The source query. /// A new query that will not apply any model-level entity query filters. @@ -2425,6 +2842,9 @@ internal static readonly MethodInfo AsNoTrackingMethodInfo /// The default tracking behavior for queries can be controlled by . /// /// + /// + /// See No-tracking queries in EF Core for more information. + /// /// The type of entity being queried. /// The source query. /// A new query where the result set will not be tracked by the context. @@ -2469,6 +2889,9 @@ internal static readonly MethodInfo AsNoTrackingWithIdentityResolutionMethodInfo /// The default tracking behavior for queries can be controlled by . /// /// + /// + /// See No-tracking queries in EF Core for more information. + /// /// The type of entity being queried. /// The source query. /// A new query where the result set will not be tracked by the context. @@ -2505,6 +2928,9 @@ internal static readonly MethodInfo AsTrackingMethodInfo /// The default tracking behavior for queries can be controlled by . /// /// + /// + /// See Tracking queries in EF Core for more information. + /// /// The type of entity being queried. /// The source query. /// A new query where the result set will be tracked by the context. @@ -2544,6 +2970,9 @@ source.Provider is EntityQueryProvider /// The default tracking behavior for queries can be controlled by . /// /// + /// + /// See Tracking queries in EF Core for more information. + /// /// The type of entity being queried. /// The source query. /// Indicates whether the query will track results or not. @@ -2577,6 +3006,9 @@ internal static readonly MethodInfo TagWithCallSiteMethodInfo /// Adds a tag to the collection of tags associated with an EF LINQ query. Tags are query annotations /// that can provide contextual tracing information at different points in the query pipeline. /// + /// + /// See Tagging queries in EF Core for more information. + /// /// The type of entity being queried. /// The source query. /// The tag. @@ -2607,6 +3039,9 @@ source.Provider is EntityQueryProvider /// Adds a tag to the collection of tags associated with an EF LINQ query with source file name and line /// where method was called that can provide contextual tracing information at different points in the query pipeline. /// + /// + /// See Tagging queries in EF Core for more information. + /// /// The type of entity being queried. /// The source query. /// The file name where the method was called @@ -2643,6 +3078,9 @@ source.Provider is EntityQueryProvider /// be loaded into the associated context. This is equivalent to calling ToList /// and then throwing away the list (without the overhead of actually creating the list). /// + /// + /// See LINQ queries in EF Core for more information. + /// /// The source query. /// is . public static void Load(this IQueryable source) @@ -2660,6 +3098,16 @@ public static void Load(this IQueryable source) /// be loaded into the associated context. This is equivalent to calling ToList /// and then throwing away the list (without the overhead of actually creating the list). /// + /// + /// + /// Multiple active operations on the same context instance are not supported. Use to ensure + /// that any asynchronous operations have completed before calling another method on this context. + /// See Avoiding DbContext threading issues for more information. + /// + /// + /// See Querying data with EF Core for more information. + /// + /// /// The source query. /// A to observe while waiting for the task to complete. /// A task that represents the asynchronous operation. @@ -2689,8 +3137,14 @@ public static async Task LoadAsync( /// according to a specified key selector function. /// /// - /// Multiple active operations on the same context instance are not supported. Use to ensure - /// that any asynchronous operations have completed before calling another method on this context. + /// + /// Multiple active operations on the same context instance are not supported. Use to ensure + /// that any asynchronous operations have completed before calling another method on this context. + /// See Avoiding DbContext threading issues for more information. + /// + /// + /// See Querying data with EF Core for more information. + /// /// /// The type of the elements of . /// The type of the key returned by . @@ -2718,8 +3172,14 @@ public static Task> ToDictionaryAsync( /// according to a specified key selector function and a comparer. /// /// - /// Multiple active operations on the same context instance are not supported. Use to ensure - /// that any asynchronous operations have completed before calling another method on this context. + /// + /// Multiple active operations on the same context instance are not supported. Use to ensure + /// that any asynchronous operations have completed before calling another method on this context. + /// See Avoiding DbContext threading issues for more information. + /// + /// + /// See Querying data with EF Core for more information. + /// /// /// The type of the elements of . /// The type of the key returned by . @@ -2749,8 +3209,14 @@ public static Task> ToDictionaryAsync( /// according to a specified key selector and an element selector function. /// /// - /// Multiple active operations on the same context instance are not supported. Use to ensure - /// that any asynchronous operations have completed before calling another method on this context. + /// + /// Multiple active operations on the same context instance are not supported. Use to ensure + /// that any asynchronous operations have completed before calling another method on this context. + /// See Avoiding DbContext threading issues for more information. + /// + /// + /// See Querying data with EF Core for more information. + /// /// /// The type of the elements of . /// The type of the key returned by . @@ -2782,8 +3248,14 @@ public static Task> ToDictionaryAsync /// - /// Multiple active operations on the same context instance are not supported. Use to ensure - /// that any asynchronous operations have completed before calling another method on this context. + /// + /// Multiple active operations on the same context instance are not supported. Use to ensure + /// that any asynchronous operations have completed before calling another method on this context. + /// See Avoiding DbContext threading issues for more information. + /// + /// + /// See Querying data with EF Core for more information. + /// /// /// The type of the elements of . /// The type of the key returned by . @@ -2831,8 +3303,14 @@ public static async Task> ToDictionaryAsync /// - /// Multiple active operations on the same context instance are not supported. Use to ensure - /// that any asynchronous operations have completed before calling another method on this context. + /// + /// Multiple active operations on the same context instance are not supported. Use to ensure + /// that any asynchronous operations have completed before calling another method on this context. + /// See Avoiding DbContext threading issues for more information. + /// + /// + /// See Querying data with EF Core for more information. + /// /// /// The type of the elements of . /// An to enumerate. @@ -2864,8 +3342,14 @@ public static async Task ForEachAsync( /// Returns an which can be enumerated asynchronously. /// /// - /// Multiple active operations on the same context instance are not supported. Use to ensure - /// that any asynchronous operations have completed before calling another method on this context. + /// + /// Multiple active operations on the same context instance are not supported. Use to ensure + /// that any asynchronous operations have completed before calling another method on this context. + /// See Avoiding DbContext threading issues for more information. + /// + /// + /// See Querying data with EF Core for more information. + /// /// /// The type of the elements of . /// An to enumerate. diff --git a/src/EFCore/Extensions/EntityFrameworkServiceCollectionExtensions.cs b/src/EFCore/Extensions/EntityFrameworkServiceCollectionExtensions.cs index b5c4c7c1063..467567d7813 100644 --- a/src/EFCore/Extensions/EntityFrameworkServiceCollectionExtensions.cs +++ b/src/EFCore/Extensions/EntityFrameworkServiceCollectionExtensions.cs @@ -34,11 +34,10 @@ public static class EntityFrameworkServiceCollectionExtensions /// Entity Framework Core does not support multiple parallel operations being run on the same /// instance. This includes both parallel execution of async queries and any explicit concurrent use from multiple threads. /// Therefore, always await async calls immediately, or use separate DbContext instances for operations that execute - /// in parallel. See https://aka.ms/efcore-docs-threading for more information. + /// in parallel. See Avoiding DbContext threading issues for more information. /// /// - /// For more information on how to use this method, see the Entity Framework Core documentation at https://aka.ms/efdocs. - /// For more information on using dependency injection, see https://go.microsoft.com/fwlink/?LinkId=526890. + /// See Using DbContext with dependency injection for more information. /// /// /// The type of context to be registered. @@ -84,11 +83,10 @@ public static IServiceCollection AddDbContext( /// Entity Framework Core does not support multiple parallel operations being run on the same /// instance. This includes both parallel execution of async queries and any explicit concurrent use from multiple threads. /// Therefore, always await async calls immediately, or use separate DbContext instances for operations that execute - /// in parallel. See https://aka.ms/efcore-docs-threading for more information. + /// in parallel. See Avoiding DbContext threading issues for more information. /// /// - /// For more information on how to use this method, see the Entity Framework Core documentation at https://aka.ms/efdocs. - /// For more information on using dependency injection, see https://go.microsoft.com/fwlink/?LinkId=526890. + /// See Using DbContext with dependency injection for more information. /// /// /// The class or interface that will be used to resolve the context from the container. @@ -147,11 +145,11 @@ public static IServiceCollection AddDbContext /// instance. This includes both parallel execution of async queries and any explicit concurrent use from multiple threads. /// Therefore, always await async calls immediately, or use separate DbContext instances for operations that execute - /// in parallel. See https://aka.ms/efcore-docs-threading for more information. + /// in parallel. See Avoiding DbContext threading issues for more information. /// /// - /// For more information on how to use this method, see the Entity Framework Core documentation at https://aka.ms/efdocs. - /// For more information on using dependency injection, see https://go.microsoft.com/fwlink/?LinkId=526890. + /// See Using DbContext with dependency injection and + /// Using DbContext pooling for more information. /// /// /// The type of context to be registered. @@ -194,11 +192,11 @@ public static IServiceCollection AddDbContextPool( /// Entity Framework Core does not support multiple parallel operations being run on the same /// instance. This includes both parallel execution of async queries and any explicit concurrent use from multiple threads. /// Therefore, always await async calls immediately, or use separate DbContext instances for operations that execute - /// in parallel. See https://aka.ms/efcore-docs-threading for more information. + /// in parallel. See Avoiding DbContext threading issues for more information. /// /// - /// For more information on how to use this method, see the Entity Framework Core documentation at https://aka.ms/efdocs. - /// For more information on using dependency injection, see https://go.microsoft.com/fwlink/?LinkId=526890. + /// See Using DbContext with dependency injection and + /// Using DbContext pooling for more information. /// /// /// The class or interface that will be used to resolve the context from the container. @@ -247,11 +245,11 @@ public static IServiceCollection AddDbContextPool /// instance. This includes both parallel execution of async queries and any explicit concurrent use from multiple threads. /// Therefore, always await async calls immediately, or use separate DbContext instances for operations that execute - /// in parallel. See https://aka.ms/efcore-docs-threading for more information. + /// in parallel. See Avoiding DbContext threading issues for more information. /// /// - /// For more information on how to use this method, see the Entity Framework Core documentation at https://aka.ms/efdocs. - /// For more information on using dependency injection, see https://go.microsoft.com/fwlink/?LinkId=526890. + /// See Using DbContext with dependency injection and + /// Using DbContext pooling for more information. /// /// /// This overload has an that provides the application's @@ -302,11 +300,11 @@ public static IServiceCollection AddDbContextPool( /// Entity Framework Core does not support multiple parallel operations being run on the same /// instance. This includes both parallel execution of async queries and any explicit concurrent use from multiple threads. /// Therefore, always await async calls immediately, or use separate DbContext instances for operations that execute - /// in parallel. See https://aka.ms/efcore-docs-threading for more information. + /// in parallel. See Avoiding DbContext threading issues for more information. /// /// - /// For more information on how to use this method, see the Entity Framework Core documentation at https://aka.ms/efdocs. - /// For more information on using dependency injection, see https://go.microsoft.com/fwlink/?LinkId=526890. + /// See Using DbContext with dependency injection and + /// Using DbContext pooling for more information. /// /// /// This overload has an that provides the application's @@ -397,11 +395,10 @@ private static void AddPoolingOptions( /// Entity Framework Core does not support multiple parallel operations being run on the same /// instance. This includes both parallel execution of async queries and any explicit concurrent use from multiple threads. /// Therefore, always await async calls immediately, or use separate DbContext instances for operations that execute - /// in parallel. See https://aka.ms/efcore-docs-threading for more information. + /// in parallel. See Avoiding DbContext threading issues for more information. /// /// - /// For more information on how to use this method, see the Entity Framework Core documentation at https://aka.ms/efdocs. - /// For more information on using dependency injection, see https://go.microsoft.com/fwlink/?LinkId=526890. + /// See Using DbContext with dependency injection for more information. /// /// /// The type of context to be registered. @@ -430,11 +427,10 @@ public static IServiceCollection AddDbContext( /// Entity Framework Core does not support multiple parallel operations being run on the same /// instance. This includes both parallel execution of async queries and any explicit concurrent use from multiple threads. /// Therefore, always await async calls immediately, or use separate DbContext instances for operations that execute - /// in parallel. See https://aka.ms/efcore-docs-threading for more information. + /// in parallel. See Avoiding DbContext threading issues for more information. /// /// - /// For more information on how to use this method, see the Entity Framework Core documentation at https://aka.ms/efdocs. - /// For more information on using dependency injection, see https://go.microsoft.com/fwlink/?LinkId=526890. + /// See Using DbContext with dependency injection for more information. /// /// /// The class or interface that will be used to resolve the context from the container. @@ -469,17 +465,16 @@ public static IServiceCollection AddDbContext /// instance. This includes both parallel execution of async queries and any explicit concurrent use from multiple threads. /// Therefore, always await async calls immediately, or use separate DbContext instances for operations that execute - /// in parallel. See https://aka.ms/efcore-docs-threading for more information. + /// in parallel. See Avoiding DbContext threading issues for more information. /// /// /// Entity Framework Core does not support multiple parallel operations being run on the same /// instance. This includes both parallel execution of async queries and any explicit concurrent use from multiple threads. /// Therefore, always await async calls immediately, or use separate DbContext instances for operations that execute - /// in parallel. See https://aka.ms/efcore-docs-threading for more information. + /// in parallel. See Avoiding DbContext threading issues for more information. /// /// - /// For more information on how to use this method, see the Entity Framework Core documentation at https://aka.ms/efdocs. - /// For more information on using dependency injection, see https://go.microsoft.com/fwlink/?LinkId=526890. + /// See Using DbContext with dependency injection for more information. /// /// /// This overload has an that provides the application's @@ -534,11 +529,10 @@ public static IServiceCollection AddDbContext( /// Entity Framework Core does not support multiple parallel operations being run on the same /// instance. This includes both parallel execution of async queries and any explicit concurrent use from multiple threads. /// Therefore, always await async calls immediately, or use separate DbContext instances for operations that execute - /// in parallel. See https://aka.ms/efcore-docs-threading for more information. + /// in parallel. See Avoiding DbContext threading issues for more information. /// /// - /// For more information on how to use this method, see the Entity Framework Core documentation at https://aka.ms/efdocs. - /// For more information on using dependency injection, see https://go.microsoft.com/fwlink/?LinkId=526890. + /// See Using DbContext with dependency injection for more information. /// /// /// This overload has an that provides the application's @@ -642,11 +636,11 @@ public static IServiceCollection AddDbContext /// instance. This includes both parallel execution of async queries and any explicit concurrent use from multiple threads. /// Therefore, always await async calls immediately, or use separate DbContext instances for operations that execute - /// in parallel. See https://aka.ms/efcore-docs-threading for more information. + /// in parallel. See Avoiding DbContext threading issues for more information. /// /// - /// For more information on how to use this method, see the Entity Framework Core documentation at https://aka.ms/efdocs. - /// For more information on using dependency injection, see https://go.microsoft.com/fwlink/?LinkId=526890. + /// See Using DbContext with dependency injection and + /// Using DbContext factories for more information. /// /// /// The type of to be created by the factory. @@ -708,11 +702,11 @@ public static IServiceCollection AddDbContextFactory( /// Entity Framework Core does not support multiple parallel operations being run on the same /// instance. This includes both parallel execution of async queries and any explicit concurrent use from multiple threads. /// Therefore, always await async calls immediately, or use separate DbContext instances for operations that execute - /// in parallel. See https://aka.ms/efcore-docs-threading for more information. + /// in parallel. See Avoiding DbContext threading issues for more information. /// /// - /// For more information on how to use this method, see the Entity Framework Core documentation at https://aka.ms/efdocs. - /// For more information on using dependency injection, see https://go.microsoft.com/fwlink/?LinkId=526890. + /// See Using DbContext with dependency injection and + /// Using DbContext factories for more information. /// /// /// The type of to be created by the factory. @@ -785,11 +779,11 @@ public static IServiceCollection AddDbContextFactory( /// Entity Framework Core does not support multiple parallel operations being run on the same /// instance. This includes both parallel execution of async queries and any explicit concurrent use from multiple threads. /// Therefore, always await async calls immediately, or use separate DbContext instances for operations that execute - /// in parallel. See https://aka.ms/efcore-docs-threading for more information. + /// in parallel. See Avoiding DbContext threading issues for more information. /// /// - /// For more information on how to use this method, see the Entity Framework Core documentation at https://aka.ms/efdocs. - /// For more information on using dependency injection, see https://go.microsoft.com/fwlink/?LinkId=526890. + /// See Using DbContext with dependency injection and + /// Using DbContext factories for more information. /// /// /// The type of to be created by the factory. @@ -859,11 +853,11 @@ public static IServiceCollection AddDbContextFactory( /// Entity Framework Core does not support multiple parallel operations being run on the same /// instance. This includes both parallel execution of async queries and any explicit concurrent use from multiple threads. /// Therefore, always await async calls immediately, or use separate DbContext instances for operations that execute - /// in parallel. See https://aka.ms/efcore-docs-threading for more information. + /// in parallel. See Avoiding DbContext threading issues for more information. /// /// - /// For more information on how to use this method, see the Entity Framework Core documentation at https://aka.ms/efdocs. - /// For more information on using dependency injection, see https://go.microsoft.com/fwlink/?LinkId=526890. + /// See Using DbContext with dependency injection and + /// Using DbContext factories for more information. /// /// /// The type of to be created by the factory. @@ -941,11 +935,12 @@ public static IServiceCollection AddDbContextFactory( /// Entity Framework Core does not support multiple parallel operations being run on the same /// instance. This includes both parallel execution of async queries and any explicit concurrent use from multiple threads. /// Therefore, always await async calls immediately, or use separate DbContext instances for operations that execute - /// in parallel. See https://aka.ms/efcore-docs-threading for more information. + /// in parallel. See Avoiding DbContext threading issues for more information. /// /// - /// For more information on how to use this method, see the Entity Framework Core documentation at https://aka.ms/efdocs. - /// For more information on using dependency injection, see https://go.microsoft.com/fwlink/?LinkId=526890. + /// See Using DbContext with dependency injection, + /// Using DbContext factories, and + /// Using DbContext pooling for more information. /// /// /// The type of to be created by the factory. @@ -991,11 +986,12 @@ public static IServiceCollection AddPooledDbContextFactory( /// Entity Framework Core does not support multiple parallel operations being run on the same /// instance. This includes both parallel execution of async queries and any explicit concurrent use from multiple threads. /// Therefore, always await async calls immediately, or use separate DbContext instances for operations that execute - /// in parallel. See https://aka.ms/efcore-docs-threading for more information. + /// in parallel. See Avoiding DbContext threading issues for more information. /// /// - /// For more information on how to use this method, see the Entity Framework Core documentation at https://aka.ms/efdocs. - /// For more information on using dependency injection, see https://go.microsoft.com/fwlink/?LinkId=526890. + /// See Using DbContext with dependency injection, + /// Using DbContext factories, and + /// Using DbContext pooling for more information. /// /// /// The type of to be created by the factory. diff --git a/src/EFCore/Extensions/MutableAnnotatableExtensions.cs b/src/EFCore/Extensions/MutableAnnotatableExtensions.cs index 67a6df03d2d..0ee8793df3f 100644 --- a/src/EFCore/Extensions/MutableAnnotatableExtensions.cs +++ b/src/EFCore/Extensions/MutableAnnotatableExtensions.cs @@ -2,10 +2,7 @@ // The .NET Foundation licenses this file to you under the MIT license. using System; -using System.Collections.Generic; -using Microsoft.EntityFrameworkCore.Infrastructure; using Microsoft.EntityFrameworkCore.Metadata; -using Microsoft.EntityFrameworkCore.Metadata.Internal; // ReSharper disable once CheckNamespace namespace Microsoft.EntityFrameworkCore diff --git a/src/EFCore/Extensions/TransactionsDatabaseFacadeExtensions.cs b/src/EFCore/Extensions/TransactionsDatabaseFacadeExtensions.cs index ba64f82d9de..37caae48062 100644 --- a/src/EFCore/Extensions/TransactionsDatabaseFacadeExtensions.cs +++ b/src/EFCore/Extensions/TransactionsDatabaseFacadeExtensions.cs @@ -19,6 +19,9 @@ public static class TransactionsDatabaseFacadeExtensions /// /// Specifies an existing to be used for database operations. /// + /// + /// See Transactions in EF Core for more information. + /// /// The for the context. /// The transaction to be used. public static void EnlistTransaction(this DatabaseFacade databaseFacade, Transaction? transaction) @@ -38,6 +41,9 @@ public static void EnlistTransaction(this DatabaseFacade databaseFacade, Transac /// /// Returns the currently enlisted transaction. /// + /// + /// See Transactions in EF Core for more information. + /// /// The for the context. /// The currently enlisted transaction. public static Transaction? GetEnlistedTransaction(this DatabaseFacade databaseFacade) diff --git a/src/EFCore/IDbContextFactory.cs b/src/EFCore/IDbContextFactory.cs index 034bb995aaf..2db0db052f6 100644 --- a/src/EFCore/IDbContextFactory.cs +++ b/src/EFCore/IDbContextFactory.cs @@ -11,7 +11,7 @@ namespace Microsoft.EntityFrameworkCore /// Defines a factory for creating instances. /// /// - /// For more information, see Using DbContextFactory. + /// See Using DbContextFactory for more information. /// /// The type to create. public interface IDbContextFactory diff --git a/src/EFCore/IEntityTypeConfiguration.cs b/src/EFCore/IEntityTypeConfiguration.cs index 263988f1014..c494fdf10da 100644 --- a/src/EFCore/IEntityTypeConfiguration.cs +++ b/src/EFCore/IEntityTypeConfiguration.cs @@ -15,7 +15,7 @@ namespace Microsoft.EntityFrameworkCore /// in . /// /// - /// For more information, see Modeling entity types and relationships in EF Core. + /// See Modeling entity types and relationships in EF Core for more information. /// /// The entity type to be configured. public interface IEntityTypeConfiguration diff --git a/src/EFCore/Infrastructure/AccessorExtensions.cs b/src/EFCore/Infrastructure/AccessorExtensions.cs index 6d8af8aae2b..bdf6198d297 100644 --- a/src/EFCore/Infrastructure/AccessorExtensions.cs +++ b/src/EFCore/Infrastructure/AccessorExtensions.cs @@ -29,14 +29,13 @@ public static class AccessorExtensions /// . /// /// - /// This method is typically used by database providers (and other extensions). It is generally - /// not used in application code. - /// - /// /// is used to hide properties that are not intended to be used in /// application code but can be used in extension methods written by database providers etc. /// /// + /// + /// See Accessing DbContext services for more information. + /// /// The type of service to be resolved. /// The object exposing the service provider. /// The requested service. diff --git a/src/EFCore/Infrastructure/Annotatable.cs b/src/EFCore/Infrastructure/Annotatable.cs index 5070ae32807..0abecee4e68 100644 --- a/src/EFCore/Infrastructure/Annotatable.cs +++ b/src/EFCore/Infrastructure/Annotatable.cs @@ -17,6 +17,9 @@ namespace Microsoft.EntityFrameworkCore.Infrastructure /// not used in application code. /// /// + /// + /// See Implementation of database providers and extensions for more information. + /// public class Annotatable : AnnotatableBase, IMutableAnnotatable { /// diff --git a/src/EFCore/Infrastructure/AnnotatableBase.cs b/src/EFCore/Infrastructure/AnnotatableBase.cs index d28d539627c..39d3196ffd3 100644 --- a/src/EFCore/Infrastructure/AnnotatableBase.cs +++ b/src/EFCore/Infrastructure/AnnotatableBase.cs @@ -21,6 +21,9 @@ namespace Microsoft.EntityFrameworkCore.Infrastructure /// not used in application code. /// /// + /// + /// See Implementation of database providers and extensions for more information. + /// public class AnnotatableBase : IAnnotatable { private SortedDictionary? _annotations; diff --git a/src/EFCore/Infrastructure/AnnotatableBuilder.cs b/src/EFCore/Infrastructure/AnnotatableBuilder.cs index 491c36a667d..0d9251d59da 100644 --- a/src/EFCore/Infrastructure/AnnotatableBuilder.cs +++ b/src/EFCore/Infrastructure/AnnotatableBuilder.cs @@ -17,6 +17,9 @@ namespace Microsoft.EntityFrameworkCore.Infrastructure /// not used in application code. /// /// + /// + /// See Implementation of database providers and extensions for more information. + /// [DebuggerDisplay("Builder {" + nameof(Metadata) + ",nq}")] public abstract class AnnotatableBuilder : IConventionAnnotatableBuilder where TMetadata : ConventionAnnotatable diff --git a/src/EFCore/Infrastructure/Annotation.cs b/src/EFCore/Infrastructure/Annotation.cs index e592023ca94..b81fabf498f 100644 --- a/src/EFCore/Infrastructure/Annotation.cs +++ b/src/EFCore/Infrastructure/Annotation.cs @@ -14,6 +14,9 @@ namespace Microsoft.EntityFrameworkCore.Infrastructure /// not used in application code. /// /// + /// + /// See Implementation of database providers and extensions for more information. + /// public class Annotation : IAnnotation { /// diff --git a/src/EFCore/Infrastructure/ConcurrencyDetectorCriticalSectionDisposer.cs b/src/EFCore/Infrastructure/ConcurrencyDetectorCriticalSectionDisposer.cs index cfa301a8ec8..39bb7bb74b8 100644 --- a/src/EFCore/Infrastructure/ConcurrencyDetectorCriticalSectionDisposer.cs +++ b/src/EFCore/Infrastructure/ConcurrencyDetectorCriticalSectionDisposer.cs @@ -9,6 +9,9 @@ namespace Microsoft.EntityFrameworkCore.Infrastructure /// A returned by an , which will exit the ongoing /// critical section when disposed. /// + /// + /// See Implementation of database providers and extensions for more information. + /// public readonly struct ConcurrencyDetectorCriticalSectionDisposer : IDisposable { private readonly IConcurrencyDetector _concurrencyDetector; diff --git a/src/EFCore/Infrastructure/ConventionAnnotatable.cs b/src/EFCore/Infrastructure/ConventionAnnotatable.cs index 16d9b914f9f..3eeec59168b 100644 --- a/src/EFCore/Infrastructure/ConventionAnnotatable.cs +++ b/src/EFCore/Infrastructure/ConventionAnnotatable.cs @@ -20,6 +20,9 @@ namespace Microsoft.EntityFrameworkCore.Infrastructure /// not used in application code. /// /// + /// + /// See Implementation of database providers and extensions for more information. + /// public abstract class ConventionAnnotatable : Annotatable, IConventionAnnotatable, IMutableAnnotatable { /// diff --git a/src/EFCore/Infrastructure/CoreOptionsExtension.cs b/src/EFCore/Infrastructure/CoreOptionsExtension.cs index 57947ff4e9e..4e2a8ed48b2 100644 --- a/src/EFCore/Infrastructure/CoreOptionsExtension.cs +++ b/src/EFCore/Infrastructure/CoreOptionsExtension.cs @@ -25,6 +25,9 @@ namespace Microsoft.EntityFrameworkCore.Infrastructure /// methods to obtain a new instance with the option changed. /// /// + /// + /// See Implementation of database providers and extensions for more information. + /// public class CoreOptionsExtension : IDbContextOptionsExtension { private IServiceProvider? _internalServiceProvider; diff --git a/src/EFCore/Infrastructure/DatabaseFacade.cs b/src/EFCore/Infrastructure/DatabaseFacade.cs index 35bb5d5cd9e..04531ff4b8e 100644 --- a/src/EFCore/Infrastructure/DatabaseFacade.cs +++ b/src/EFCore/Infrastructure/DatabaseFacade.cs @@ -74,6 +74,10 @@ private IDatabaseFacadeDependencies Dependencies /// to ensure the database is created using migrations and that all migrations have been applied. /// /// + /// + /// See Managing database schemas with EF Core + /// and Database creation APIs for more information. + /// /// if the database is created, if it already existed. public virtual bool EnsureCreated() => Dependencies.DatabaseCreator.EnsureCreated(); @@ -114,6 +118,19 @@ public virtual bool EnsureCreated() /// to ensure the database is created using migrations and that all migrations have been applied. /// /// + /// + /// + /// Entity Framework Core does not support multiple parallel operations being run on the same DbContext instance. This + /// includes both parallel execution of async queries and any explicit concurrent use from multiple threads. + /// Therefore, always await async calls immediately, or use separate DbContext instances for operations that execute + /// in parallel. See Avoiding DbContext threading issues + /// for more information. + /// + /// + /// See Managing database schemas with EF Core + /// and Database creation APIs for more information. + /// + /// /// A to observe while waiting for the task to complete. /// /// A task that represents the asynchronous save operation. The task result contains if the database is created, @@ -138,6 +155,10 @@ public virtual Task EnsureCreatedAsync(CancellationToken cancellationToken /// execution of the test/prototype. Note, however, that data in the database is not preserved. /// /// + /// + /// See Managing database schemas with EF Core + /// and Database creation APIs for more information. + /// /// if the database is deleted, if it did not exist. public virtual bool EnsureDeleted() => Dependencies.DatabaseCreator.EnsureDeleted(); @@ -157,6 +178,19 @@ public virtual bool EnsureDeleted() /// execution of the test/prototype. Note, however, that data in the database is not preserved. /// /// + /// + /// + /// Entity Framework Core does not support multiple parallel operations being run on the same DbContext instance. This + /// includes both parallel execution of async queries and any explicit concurrent use from multiple threads. + /// Therefore, always await async calls immediately, or use separate DbContext instances for operations that execute + /// in parallel. See Avoiding DbContext threading issues + /// for more information. + /// + /// + /// See Managing database schemas with EF Core + /// and Database creation APIs for more information. + /// + /// /// A to observe while waiting for the task to complete. /// /// A task that represents the asynchronous save operation. The task result contains if the database is deleted, @@ -182,6 +216,9 @@ public virtual Task EnsureDeletedAsync(CancellationToken cancellationToken /// up-to-date with regard to schema creation, etc. /// /// + /// + /// See Database connections in EF Core for more information. + /// /// if the database is available; otherwise. public virtual bool CanConnect() => Dependencies.DatabaseCreator.CanConnect(); @@ -202,6 +239,18 @@ public virtual bool CanConnect() /// up-to-date with regard to schema creation, etc. /// /// + /// + /// + /// Entity Framework Core does not support multiple parallel operations being run on the same DbContext instance. This + /// includes both parallel execution of async queries and any explicit concurrent use from multiple threads. + /// Therefore, always await async calls immediately, or use separate DbContext instances for operations that execute + /// in parallel. See Avoiding DbContext threading issues + /// for more information. + /// + /// + /// See Database connections in EF Core for more information. + /// + /// /// A to observe while waiting for the task to complete. /// if the database is available; otherwise. /// If the is canceled. @@ -211,6 +260,9 @@ public virtual Task CanConnectAsync(CancellationToken cancellationToken = /// /// Starts a new transaction. /// + /// + /// See Transactions in EF Core for more information. + /// /// /// A that represents the started transaction. /// @@ -220,6 +272,18 @@ public virtual IDbContextTransaction BeginTransaction() /// /// Asynchronously starts a new transaction. /// + /// + /// + /// Entity Framework Core does not support multiple parallel operations being run on the same DbContext instance. This + /// includes both parallel execution of async queries and any explicit concurrent use from multiple threads. + /// Therefore, always await async calls immediately, or use separate DbContext instances for operations that execute + /// in parallel. See Avoiding DbContext threading issues + /// for more information. + /// + /// + /// See Transactions in EF Core for more information. + /// + /// /// A to observe while waiting for the task to complete. /// /// A task that represents the asynchronous transaction initialization. The task result contains a @@ -238,6 +302,18 @@ public virtual void CommitTransaction() /// /// Applies the outstanding operations in the current transaction to the database. /// + /// + /// + /// Entity Framework Core does not support multiple parallel operations being run on the same DbContext instance. This + /// includes both parallel execution of async queries and any explicit concurrent use from multiple threads. + /// Therefore, always await async calls immediately, or use separate DbContext instances for operations that execute + /// in parallel. See Avoiding DbContext threading issues + /// for more information. + /// + /// + /// See Transactions in EF Core for more information. + /// + /// /// A to observe while waiting for the task to complete. /// A Task representing the asynchronous operation. /// If the is canceled. @@ -247,12 +323,27 @@ public virtual Task CommitTransactionAsync(CancellationToken cancellationToken = /// /// Discards the outstanding operations in the current transaction. /// + /// + /// See Transactions in EF Core for more information. + /// public virtual void RollbackTransaction() => Dependencies.TransactionManager.RollbackTransaction(); /// /// Discards the outstanding operations in the current transaction. /// + /// + /// + /// See Transactions in EF Core for more information. + /// + /// + /// Entity Framework Core does not support multiple parallel operations being run on the same DbContext instance. This + /// includes both parallel execution of async queries and any explicit concurrent use from multiple threads. + /// Therefore, always await async calls immediately, or use separate DbContext instances for operations that execute + /// in parallel. See Avoiding DbContext threading issues + /// for more information. + /// + /// /// A to observe while waiting for the task to complete. /// A Task representing the asynchronous operation. /// If the is canceled. @@ -262,6 +353,9 @@ public virtual Task RollbackTransactionAsync(CancellationToken cancellationToken /// /// Creates an instance of the configured . /// + /// + /// See EF Core Connection Resiliency for more information. + /// /// An instance. public virtual IExecutionStrategy CreateExecutionStrategy() => Dependencies.ExecutionStrategyFactory.Create(); @@ -284,6 +378,9 @@ public virtual IExecutionStrategy CreateExecutionStrategy() /// on the returned . /// /// + /// + /// See Transactions in EF Core for more information. + /// public virtual IDbContextTransaction? CurrentTransaction => Dependencies.TransactionManager.CurrentTransaction; @@ -306,6 +403,9 @@ public virtual IDbContextTransaction? CurrentTransaction /// could be left in a corrupted state if fails. /// /// + /// + /// See Transactions in EF Core for more information. + /// public virtual bool AutoTransactionsEnabled { get; set; } = true; /// @@ -323,6 +423,9 @@ public virtual IDbContextTransaction? CurrentTransaction /// corrupted state if fails. /// /// + /// + /// See Transactions in EF Core for more information. + /// public virtual bool AutoSavepointsEnabled { get; set; } = true; /// @@ -340,6 +443,10 @@ public virtual IDbContextTransaction? CurrentTransaction /// provider to use as part of configuring the context. /// /// + /// + /// See DbContext lifetime, configuration, and initialization + /// for more information. + /// public virtual string? ProviderName // Needs to be lazy because used from OnModelCreating => _context.GetService>() @@ -355,6 +462,9 @@ public virtual string? ProviderName /// not directly exposed in the public API surface. /// /// + /// + /// See Implementation of database providers and extensions for more information. + /// IServiceProvider IInfrastructure.Instance => ((IInfrastructure)_context).Instance; diff --git a/src/EFCore/Infrastructure/DbContextAttribute.cs b/src/EFCore/Infrastructure/DbContextAttribute.cs index 354d8831183..963db4173e1 100644 --- a/src/EFCore/Infrastructure/DbContextAttribute.cs +++ b/src/EFCore/Infrastructure/DbContextAttribute.cs @@ -10,6 +10,9 @@ namespace Microsoft.EntityFrameworkCore.Infrastructure /// Identifies the that a class belongs to. For example, this attribute is used /// to identify which context a migration applies to. /// + /// + /// See Managing database schemas with EF Cor for more information. + /// [AttributeUsage(AttributeTargets.Class)] public sealed class DbContextAttribute : Attribute { diff --git a/src/EFCore/Infrastructure/DbContextOptionsExtensionInfo.cs b/src/EFCore/Infrastructure/DbContextOptionsExtensionInfo.cs index 3b61800777c..3416a17ff63 100644 --- a/src/EFCore/Infrastructure/DbContextOptionsExtensionInfo.cs +++ b/src/EFCore/Infrastructure/DbContextOptionsExtensionInfo.cs @@ -10,12 +10,18 @@ namespace Microsoft.EntityFrameworkCore.Infrastructure /// /// Information/metadata for an . /// + /// + /// See Implementation of database providers and extensions for more information. + /// public abstract class DbContextOptionsExtensionInfo { /// /// Creates a new instance containing /// info/metadata for the given extension. /// + /// + /// See Implementation of database providers and extensions for more information. + /// /// The extension. protected DbContextOptionsExtensionInfo(IDbContextOptionsExtension extension) { @@ -27,17 +33,26 @@ protected DbContextOptionsExtensionInfo(IDbContextOptionsExtension extension) /// /// The extension for which this instance contains metadata. /// + /// + /// See Implementation of database providers and extensions for more information. + /// public virtual IDbContextOptionsExtension Extension { get; } /// /// if the extension is a database provider; otherwise. /// + /// + /// See Implementation of database providers and extensions for more information. + /// public abstract bool IsDatabaseProvider { get; } /// /// A message fragment for logging typically containing information about /// any useful non-default options that have been configured. /// + /// + /// See Implementation of database providers and extensions for more information. + /// public abstract string LogFragment { get; } /// @@ -45,6 +60,9 @@ protected DbContextOptionsExtensionInfo(IDbContextOptionsExtension extension) /// to be needed. For example, if the options affect a singleton service. However most extensions do not /// have any such options and should return zero. /// + /// + /// See Implementation of database providers and extensions for more information. + /// /// A hash over options that require a new service provider when changed. public abstract int GetServiceProviderHashCode(); @@ -52,6 +70,9 @@ protected DbContextOptionsExtensionInfo(IDbContextOptionsExtension extension) /// Returns a value indicating whether all of the options used in /// are the same as in the given extension. /// + /// + /// See Implementation of database providers and extensions for more information. + /// /// The other extension. /// A value indicating whether all of the options that require a new service provider are the same. public abstract bool ShouldUseSameServiceProvider(DbContextOptionsExtensionInfo other); @@ -62,6 +83,9 @@ protected DbContextOptionsExtensionInfo(IDbContextOptionsExtension extension) /// this option and differences can be logged. The dictionary key should be prefixed by the /// extension name. For example, "SqlServer:". /// + /// + /// See Implementation of database providers and extensions for more information. + /// /// The dictionary to populate. public abstract void PopulateDebugInfo(IDictionary debugInfo); } diff --git a/src/EFCore/Infrastructure/DebugView.cs b/src/EFCore/Infrastructure/DebugView.cs index a52cbb218c6..5973c94c80c 100644 --- a/src/EFCore/Infrastructure/DebugView.cs +++ b/src/EFCore/Infrastructure/DebugView.cs @@ -10,6 +10,9 @@ namespace Microsoft.EntityFrameworkCore.Infrastructure /// A placeholder for lazily-generated debug strings that can be expanded in the debugger to /// to generate and display them. /// + /// + /// See EF Core debug views for more information. + /// public class DebugView { [DebuggerBrowsable(DebuggerBrowsableState.Never)] @@ -34,12 +37,18 @@ public DebugView( /// /// The long-form, detailed debug string. /// + /// + /// See EF Core debug views for more information. + /// public virtual string LongView => _toLongDebugString(); /// /// The short-form, less-detailed debug string. /// + /// + /// See EF Core debug views for more information. + /// public virtual string ShortView => _toShortDebugString(); } diff --git a/src/EFCore/Infrastructure/EntityFrameworkEventSource.cs b/src/EFCore/Infrastructure/EntityFrameworkEventSource.cs index 429aa54a14f..c9a45c7628b 100644 --- a/src/EFCore/Infrastructure/EntityFrameworkEventSource.cs +++ b/src/EFCore/Infrastructure/EntityFrameworkEventSource.cs @@ -13,6 +13,9 @@ namespace Microsoft.EntityFrameworkCore.Infrastructure /// /// An emitting Entity Framework performance counter data. /// + /// + /// See EF Core event counters for more information. + /// public sealed class EntityFrameworkEventSource : EventSource { private long _activeDbContexts, _totalQueries, _totalSaveChanges; @@ -35,6 +38,9 @@ public sealed class EntityFrameworkEventSource : EventSource /// /// The singleton instance of . /// + /// + /// See EF Core event counters for more information. + /// public static readonly EntityFrameworkEventSource Log = new(); private EntityFrameworkEventSource() @@ -45,48 +51,72 @@ private EntityFrameworkEventSource() /// /// Indicates that a new instance is being initialized. /// + /// + /// See EF Core event counters for more information. + /// public void DbContextInitializing() => Interlocked.Increment(ref _activeDbContexts); /// /// Indicates that a instance is being disposed. /// + /// + /// See EF Core event counters for more information. + /// public void DbContextDisposing() => Interlocked.Decrement(ref _activeDbContexts); /// /// Indicates that a query is about to begin execution. /// + /// + /// See EF Core event counters for more information. + /// public void QueryExecuting() => Interlocked.Increment(ref _totalQueries); /// /// Indicates that changes are about to be saved. /// + /// + /// See EF Core event counters for more information. + /// public void SavingChanges() => Interlocked.Increment(ref _totalSaveChanges); /// /// Indicates a hit in the compiled query cache, signifying that query compilation will not need to occur. /// + /// + /// See EF Core event counters for more information. + /// public void CompiledQueryCacheHit() => Interlocked.Increment(ref _compiledQueryCacheInfo.Hits); /// /// Indicates a miss in the compiled query cache, signifying that query compilation will need to occur. /// + /// + /// See EF Core event counters for more information. + /// public void CompiledQueryCacheMiss() => Interlocked.Increment(ref _compiledQueryCacheInfo.Misses); /// /// Indicates that an operation executed by an failed (and may be retried). /// + /// + /// See EF Core event counters for more information. + /// public void ExecutionStrategyOperationFailure() => Interlocked.Increment(ref _totalExecutionStrategyOperationFailures); /// /// Indicates that an optimistic concurrency failure has occurred. /// + /// + /// See EF Core event counters for more information. + /// public void OptimisticConcurrencyFailure() => Interlocked.Increment(ref _totalOptimisticConcurrencyFailures); diff --git a/src/EFCore/Infrastructure/EntityFrameworkServicesBuilder.cs b/src/EFCore/Infrastructure/EntityFrameworkServicesBuilder.cs index 0e60016bd2d..ebb15526d8a 100644 --- a/src/EFCore/Infrastructure/EntityFrameworkServicesBuilder.cs +++ b/src/EFCore/Infrastructure/EntityFrameworkServicesBuilder.cs @@ -48,6 +48,9 @@ namespace Microsoft.EntityFrameworkCore.Infrastructure /// can handle the new scope, and that it does not cause issue for services that depend on it. /// /// + /// + /// See Implementation of database providers and extensions for more information. + /// public class EntityFrameworkServicesBuilder { /// @@ -155,6 +158,9 @@ public static readonly IDictionary CoreServices /// registration of provider services. Relational providers should use /// 'EntityFrameworkRelationalServicesBuilder'. /// + /// + /// See Implementation of database providers and extensions for more information. + /// /// The collection to which services will be registered. public EntityFrameworkServicesBuilder(IServiceCollection serviceCollection) { @@ -166,11 +172,17 @@ public EntityFrameworkServicesBuilder(IServiceCollection serviceCollection) /// /// Access to the underlying . /// + /// + /// See Implementation of database providers and extensions for more information. + /// protected virtual ServiceCollectionMap ServiceCollectionMap { get; } /// /// Gets the for the given service type. /// + /// + /// See Implementation of database providers and extensions for more information. + /// /// The type that defines the service API. /// The for the type. /// when the type is not an EF service. @@ -185,6 +197,9 @@ protected virtual ServiceCharacteristics GetServiceCharacteristics(Type serviceT /// /// Gets the for the given service type. /// + /// + /// See Implementation of database providers and extensions for more information. + /// /// The type that defines the service API. /// The for the type or if it's not an EF service. protected virtual ServiceCharacteristics? TryGetServiceCharacteristics(Type serviceType) @@ -198,6 +213,9 @@ protected virtual ServiceCharacteristics GetServiceCharacteristics(Type serviceT /// Note that implementations of Entity Framework services should be registered directly on the /// and not through this method. /// + /// + /// See Implementation of database providers and extensions for more information. + /// /// The underlying map to which provider services should be added. /// This builder, such that further calls can be chained. public virtual EntityFrameworkServicesBuilder TryAddProviderSpecificServices(Action serviceMap) @@ -224,6 +242,9 @@ public virtual EntityFrameworkServicesBuilder TryAddProviderSpecificServices(Act /// Database providers must call this method as the last step of service registration--that is, /// after all provider services have been registered. /// + /// + /// See Implementation of database providers and extensions for more information. + /// /// This builder, such that further calls can be chained. public virtual EntityFrameworkServicesBuilder TryAddCoreServices() { @@ -344,6 +365,9 @@ private static IDbContextServices GetContextServices(IServiceProvider servicePro /// Adds an implementation of an Entity Framework service only if one has not already been registered. /// The scope of the service is automatically defined by Entity Framework. /// + /// + /// See Implementation of database providers and extensions for more information. + /// /// The contract for the service. /// The concrete type that implements the service. /// This builder, such that further calls can be chained. @@ -356,6 +380,9 @@ public virtual EntityFrameworkServicesBuilder TryAdd( /// Adds an implementation of an Entity Framework service only if one has not already been registered. /// The scope of the service is automatically defined by Entity Framework. /// + /// + /// See Implementation of database providers and extensions for more information. + /// /// The contract for the service. /// The concrete type that implements the service. /// This builder, such that further calls can be chained. @@ -382,6 +409,9 @@ public virtual EntityFrameworkServicesBuilder TryAdd(Type serviceType, Type impl /// Adds a factory for an Entity Framework service only if one has not already been registered. /// The scope of the service is automatically defined by Entity Framework. /// + /// + /// See Implementation of database providers and extensions for more information. + /// /// The contract for the service. /// The factory that will create the service instance. /// This builder, such that further calls can be chained. @@ -393,6 +423,9 @@ public virtual EntityFrameworkServicesBuilder TryAdd(Func + /// + /// See Implementation of database providers and extensions for more information. + /// /// The contract for the service. /// The concrete type that implements the service. /// The factory that will create the service instance. @@ -407,6 +440,9 @@ public virtual EntityFrameworkServicesBuilder TryAdd( /// Adds a factory for an Entity Framework service only if one has not already been registered. /// The scope of the service is automatically defined by Entity Framework. /// + /// + /// See Implementation of database providers and extensions for more information. + /// /// The contract for the service. /// The concrete type that implements the service. /// The factory that will create the service instance. @@ -444,6 +480,9 @@ public virtual EntityFrameworkServicesBuilder TryAdd( /// Adds an implementation of an Entity Framework service only if one has not already been registered. /// This method can only be used for singleton services. /// + /// + /// See Implementation of database providers and extensions for more information. + /// /// The contract for the service. /// The implementation of the service. /// This builder, such that further calls can be chained. @@ -455,6 +494,9 @@ public virtual EntityFrameworkServicesBuilder TryAdd(TService implemen /// Adds an implementation of an Entity Framework service only if one has not already been registered. /// This method can only be used for singleton services. /// + /// + /// See Implementation of database providers and extensions for more information. + /// /// The contract for the service. /// The implementation of the service. /// This builder, such that further calls can be chained. diff --git a/src/EFCore/Infrastructure/ExpressionExtensions.cs b/src/EFCore/Infrastructure/ExpressionExtensions.cs index 72a9851ed38..4c614134439 100644 --- a/src/EFCore/Infrastructure/ExpressionExtensions.cs +++ b/src/EFCore/Infrastructure/ExpressionExtensions.cs @@ -26,6 +26,9 @@ namespace Microsoft.EntityFrameworkCore.Infrastructure /// not used in application code. /// /// + /// + /// See Implementation of database providers and extensions for more information. + /// public static class ExpressionExtensions { /// diff --git a/src/EFCore/Infrastructure/IAnnotatable.cs b/src/EFCore/Infrastructure/IAnnotatable.cs index d4dfdc62bc3..e12b9f010fe 100644 --- a/src/EFCore/Infrastructure/IAnnotatable.cs +++ b/src/EFCore/Infrastructure/IAnnotatable.cs @@ -15,6 +15,9 @@ namespace Microsoft.EntityFrameworkCore.Infrastructure /// not used in application code. /// /// + /// + /// See Implementation of database providers and extensions for more information. + /// public interface IAnnotatable : IReadOnlyAnnotatable { /// diff --git a/src/EFCore/Infrastructure/IAnnotation.cs b/src/EFCore/Infrastructure/IAnnotation.cs index cac2dce5833..f1f20a0fc94 100644 --- a/src/EFCore/Infrastructure/IAnnotation.cs +++ b/src/EFCore/Infrastructure/IAnnotation.cs @@ -12,6 +12,9 @@ namespace Microsoft.EntityFrameworkCore.Infrastructure /// not used in application code. /// /// + /// + /// See Implementation of database providers and extensions for more information. + /// public interface IAnnotation { /// diff --git a/src/EFCore/Infrastructure/IConcurrencyDetector.cs b/src/EFCore/Infrastructure/IConcurrencyDetector.cs index 5b15b40069c..5f31758870c 100644 --- a/src/EFCore/Infrastructure/IConcurrencyDetector.cs +++ b/src/EFCore/Infrastructure/IConcurrencyDetector.cs @@ -17,6 +17,9 @@ namespace Microsoft.EntityFrameworkCore.Infrastructure /// The implementation does not need to be thread-safe. /// /// + /// + /// See Implementation of database providers and extensions for more information. + /// public interface IConcurrencyDetector { /// diff --git a/src/EFCore/Infrastructure/ICoreSingletonOptions.cs b/src/EFCore/Infrastructure/ICoreSingletonOptions.cs index 4803a6ede8a..8334439c79a 100644 --- a/src/EFCore/Infrastructure/ICoreSingletonOptions.cs +++ b/src/EFCore/Infrastructure/ICoreSingletonOptions.cs @@ -16,6 +16,9 @@ namespace Microsoft.EntityFrameworkCore.Infrastructure /// This service cannot depend on services registered as . /// /// + /// + /// See Implementation of database providers and extensions for more information. + /// public interface ICoreSingletonOptions : ISingletonOptions { /// diff --git a/src/EFCore/Infrastructure/ICurrentDbContext.cs b/src/EFCore/Infrastructure/ICurrentDbContext.cs index 4850cca8ecc..3bfeddbd070 100644 --- a/src/EFCore/Infrastructure/ICurrentDbContext.cs +++ b/src/EFCore/Infrastructure/ICurrentDbContext.cs @@ -21,6 +21,9 @@ namespace Microsoft.EntityFrameworkCore.Infrastructure /// The implementation does not need to be thread-safe. /// /// + /// + /// See Implementation of database providers and extensions for more information. + /// public interface ICurrentDbContext { /// diff --git a/src/EFCore/Infrastructure/IDbContextOptions.cs b/src/EFCore/Infrastructure/IDbContextOptions.cs index 0542788091a..f82b331d108 100644 --- a/src/EFCore/Infrastructure/IDbContextOptions.cs +++ b/src/EFCore/Infrastructure/IDbContextOptions.cs @@ -20,6 +20,9 @@ namespace Microsoft.EntityFrameworkCore.Infrastructure /// The implementation does not need to be thread-safe. /// /// + /// + /// See Implementation of database providers and extensions for more information. + /// public interface IDbContextOptions { /// diff --git a/src/EFCore/Infrastructure/IDbContextOptionsBuilderInfrastructure.cs b/src/EFCore/Infrastructure/IDbContextOptionsBuilderInfrastructure.cs index 5587b1817f8..fc68a3494ea 100644 --- a/src/EFCore/Infrastructure/IDbContextOptionsBuilderInfrastructure.cs +++ b/src/EFCore/Infrastructure/IDbContextOptionsBuilderInfrastructure.cs @@ -13,6 +13,9 @@ namespace Microsoft.EntityFrameworkCore.Infrastructure /// not used in application code. /// /// + /// + /// See Implementation of database providers and extensions for more information. + /// public interface IDbContextOptionsBuilderInfrastructure { /// @@ -24,6 +27,9 @@ public interface IDbContextOptionsBuilderInfrastructure /// application code. /// /// + /// + /// See Implementation of database providers and extensions for more information. + /// /// The type of extension to be added. /// The extension to be added. void AddOrUpdateExtension(TExtension extension) diff --git a/src/EFCore/Infrastructure/IDbContextOptionsExtension.cs b/src/EFCore/Infrastructure/IDbContextOptionsExtension.cs index c43fae65066..0b0d24e72b0 100644 --- a/src/EFCore/Infrastructure/IDbContextOptionsExtension.cs +++ b/src/EFCore/Infrastructure/IDbContextOptionsExtension.cs @@ -15,6 +15,9 @@ namespace Microsoft.EntityFrameworkCore.Infrastructure /// not used in application code. /// /// + /// + /// See Implementation of database providers and extensions for more information. + /// public interface IDbContextOptionsExtension { /// diff --git a/src/EFCore/Infrastructure/IInfrastructure.cs b/src/EFCore/Infrastructure/IInfrastructure.cs index e2d8b66fb33..52363b1cfb5 100644 --- a/src/EFCore/Infrastructure/IInfrastructure.cs +++ b/src/EFCore/Infrastructure/IInfrastructure.cs @@ -13,6 +13,9 @@ namespace Microsoft.EntityFrameworkCore.Infrastructure /// not used in application code. /// /// + /// + /// See Implementation of database providers and extensions for more information. + /// /// The type of the property being hidden. public interface IInfrastructure { diff --git a/src/EFCore/Infrastructure/IInternalServiceCollectionMap.cs b/src/EFCore/Infrastructure/IInternalServiceCollectionMap.cs index c1ba23f2d82..303712c8a0e 100644 --- a/src/EFCore/Infrastructure/IInternalServiceCollectionMap.cs +++ b/src/EFCore/Infrastructure/IInternalServiceCollectionMap.cs @@ -14,6 +14,9 @@ namespace Microsoft.EntityFrameworkCore.Infrastructure /// not used in application code. /// /// + /// + /// See Implementation of database providers and extensions for more information. + /// public interface IInternalServiceCollectionMap { /// diff --git a/src/EFCore/Infrastructure/IModelCacheKeyFactory.cs b/src/EFCore/Infrastructure/IModelCacheKeyFactory.cs index b28387e4ed9..629d8a86dce 100644 --- a/src/EFCore/Infrastructure/IModelCacheKeyFactory.cs +++ b/src/EFCore/Infrastructure/IModelCacheKeyFactory.cs @@ -12,15 +12,14 @@ namespace Microsoft.EntityFrameworkCore.Infrastructure /// a cached model for a given context. /// /// - /// This interface is typically used by database providers (and other extensions). It is generally - /// not used in application code. - /// - /// /// The service lifetime is . This means a single instance /// is used by many instances. The implementation must be thread-safe. /// This service cannot depend on services registered as . /// /// + /// + /// See EF Core model caching for more information. + /// public interface IModelCacheKeyFactory { /// diff --git a/src/EFCore/Infrastructure/IModelCustomizer.cs b/src/EFCore/Infrastructure/IModelCustomizer.cs index f0de23f1537..6eda21fcc00 100644 --- a/src/EFCore/Infrastructure/IModelCustomizer.cs +++ b/src/EFCore/Infrastructure/IModelCustomizer.cs @@ -23,6 +23,9 @@ namespace Microsoft.EntityFrameworkCore.Infrastructure /// This service cannot depend on services registered as . /// /// + /// + /// See Implementation of database providers and extensions for more information. + /// public interface IModelCustomizer { /// diff --git a/src/EFCore/Infrastructure/IModelRuntimeInitializer.cs b/src/EFCore/Infrastructure/IModelRuntimeInitializer.cs index 52dc77ce6e3..8546a7671f2 100644 --- a/src/EFCore/Infrastructure/IModelRuntimeInitializer.cs +++ b/src/EFCore/Infrastructure/IModelRuntimeInitializer.cs @@ -23,6 +23,9 @@ namespace Microsoft.EntityFrameworkCore.Infrastructure /// This service cannot depend on services registered as . /// /// + /// + /// See Implementation of database providers and extensions for more information. + /// public interface IModelRuntimeInitializer { /// diff --git a/src/EFCore/Infrastructure/IModelSource.cs b/src/EFCore/Infrastructure/IModelSource.cs index f875c6f37a7..190221475af 100644 --- a/src/EFCore/Infrastructure/IModelSource.cs +++ b/src/EFCore/Infrastructure/IModelSource.cs @@ -23,6 +23,9 @@ namespace Microsoft.EntityFrameworkCore.Infrastructure /// This service cannot depend on services registered as . /// /// + /// + /// See Implementation of database providers and extensions for more information. + /// public interface IModelSource { /// diff --git a/src/EFCore/Infrastructure/IModelValidator.cs b/src/EFCore/Infrastructure/IModelValidator.cs index 4afbc6d4b98..877b8338e67 100644 --- a/src/EFCore/Infrastructure/IModelValidator.cs +++ b/src/EFCore/Infrastructure/IModelValidator.cs @@ -17,6 +17,9 @@ namespace Microsoft.EntityFrameworkCore.Infrastructure /// This service cannot depend on services registered as . /// /// + /// + /// See Implementation of database providers and extensions for more information. + /// public interface IModelValidator { /// diff --git a/src/EFCore/Infrastructure/IReadOnlyAnnotatable.cs b/src/EFCore/Infrastructure/IReadOnlyAnnotatable.cs index 1d3ab725309..a6e073efdd1 100644 --- a/src/EFCore/Infrastructure/IReadOnlyAnnotatable.cs +++ b/src/EFCore/Infrastructure/IReadOnlyAnnotatable.cs @@ -16,6 +16,9 @@ namespace Microsoft.EntityFrameworkCore.Infrastructure /// not used in application code. /// /// + /// + /// See Implementation of database providers and extensions for more information. + /// public interface IReadOnlyAnnotatable { /// diff --git a/src/EFCore/Infrastructure/IResettableService.cs b/src/EFCore/Infrastructure/IResettableService.cs index a1cd4ecfcde..be25179fd4e 100644 --- a/src/EFCore/Infrastructure/IResettableService.cs +++ b/src/EFCore/Infrastructure/IResettableService.cs @@ -25,6 +25,9 @@ namespace Microsoft.EntityFrameworkCore.Infrastructure /// The implementations do not need to be thread-safe. /// /// + /// + /// See Implementation of database providers and extensions for more information. + /// public interface IResettableService { /// diff --git a/src/EFCore/Infrastructure/ISingletonOptions.cs b/src/EFCore/Infrastructure/ISingletonOptions.cs index 64341ed75eb..90b506e6fea 100644 --- a/src/EFCore/Infrastructure/ISingletonOptions.cs +++ b/src/EFCore/Infrastructure/ISingletonOptions.cs @@ -18,6 +18,9 @@ namespace Microsoft.EntityFrameworkCore.Infrastructure /// This service cannot depend on services registered as . /// /// + /// + /// See Implementation of database providers and extensions for more information. + /// public interface ISingletonOptions { /// diff --git a/src/EFCore/Infrastructure/IndentedStringBuilder.cs b/src/EFCore/Infrastructure/IndentedStringBuilder.cs index 27502675cd5..234aeb2c633 100644 --- a/src/EFCore/Infrastructure/IndentedStringBuilder.cs +++ b/src/EFCore/Infrastructure/IndentedStringBuilder.cs @@ -17,6 +17,9 @@ namespace Microsoft.EntityFrameworkCore.Infrastructure /// not used in application code. /// /// + /// + /// See Implementation of database providers and extensions for more information. + /// public class IndentedStringBuilder { private const byte IndentSize = 4; diff --git a/src/EFCore/Infrastructure/MetadataDebugStringOptions.cs b/src/EFCore/Infrastructure/MetadataDebugStringOptions.cs index 30b422ac46a..79bafcebb0c 100644 --- a/src/EFCore/Infrastructure/MetadataDebugStringOptions.cs +++ b/src/EFCore/Infrastructure/MetadataDebugStringOptions.cs @@ -8,6 +8,10 @@ namespace Microsoft.EntityFrameworkCore.Infrastructure /// /// Options to print debug string differently for metadata objects. /// + /// + /// See Modeling entity types and relationships and + /// EF Core debug views for more information. + /// [Flags] public enum MetadataDebugStringOptions { diff --git a/src/EFCore/Infrastructure/MethodInfoExtensions.cs b/src/EFCore/Infrastructure/MethodInfoExtensions.cs index 3a03e40d449..4971331be91 100644 --- a/src/EFCore/Infrastructure/MethodInfoExtensions.cs +++ b/src/EFCore/Infrastructure/MethodInfoExtensions.cs @@ -14,6 +14,9 @@ namespace Microsoft.EntityFrameworkCore.Infrastructure /// not used in application code. /// /// + /// + /// See Implementation of database providers and extensions for more information. + /// public static class MethodInfoExtensions { private static readonly string _efTypeName = typeof(EF).FullName!; diff --git a/src/EFCore/Infrastructure/ModelCacheKey.cs b/src/EFCore/Infrastructure/ModelCacheKey.cs index a1190d2fb72..6aa223e35e9 100644 --- a/src/EFCore/Infrastructure/ModelCacheKey.cs +++ b/src/EFCore/Infrastructure/ModelCacheKey.cs @@ -11,11 +11,10 @@ namespace Microsoft.EntityFrameworkCore.Infrastructure /// a cached model for a given context. This default implementation uses the context type as they key, thus /// assuming that all contexts of a given type have the same model. /// - /// - /// This type is typically used by database providers (and other extensions). It is generally - /// not used in application code. - /// /// + /// + /// See EF Core model caching for more information. + /// public class ModelCacheKey { private readonly Type _dbContextType; diff --git a/src/EFCore/Infrastructure/ModelCacheKeyFactory.cs b/src/EFCore/Infrastructure/ModelCacheKeyFactory.cs index 44793e96cba..88a8d3a2201 100644 --- a/src/EFCore/Infrastructure/ModelCacheKeyFactory.cs +++ b/src/EFCore/Infrastructure/ModelCacheKeyFactory.cs @@ -13,15 +13,14 @@ namespace Microsoft.EntityFrameworkCore.Infrastructure /// assuming that all contexts of a given type have the same model. /// /// - /// This type is typically used by database providers (and other extensions). It is generally - /// not used in application code. - /// - /// /// The service lifetime is . This means a single instance /// is used by many instances. The implementation must be thread-safe. /// This service cannot depend on services registered as . /// /// + /// + /// See EF Core model caching for more information. + /// public class ModelCacheKeyFactory : IModelCacheKeyFactory { /// diff --git a/src/EFCore/Infrastructure/ModelCustomizer.cs b/src/EFCore/Infrastructure/ModelCustomizer.cs index e8cae64bdfb..e95d8379607 100644 --- a/src/EFCore/Infrastructure/ModelCustomizer.cs +++ b/src/EFCore/Infrastructure/ModelCustomizer.cs @@ -21,6 +21,9 @@ namespace Microsoft.EntityFrameworkCore.Infrastructure /// This service cannot depend on services registered as . /// /// + /// + /// See Implementation of database providers and extensions for more information. + /// public class ModelCustomizer : IModelCustomizer { /// diff --git a/src/EFCore/Infrastructure/ModelRuntimeInitializer.cs b/src/EFCore/Infrastructure/ModelRuntimeInitializer.cs index 15b6091c6ee..5652cf10d17 100644 --- a/src/EFCore/Infrastructure/ModelRuntimeInitializer.cs +++ b/src/EFCore/Infrastructure/ModelRuntimeInitializer.cs @@ -23,6 +23,9 @@ namespace Microsoft.EntityFrameworkCore.Infrastructure /// This service cannot depend on services registered as . /// /// + /// + /// See Implementation of database providers and extensions for more information. + /// public class ModelRuntimeInitializer : IModelRuntimeInitializer { private static readonly object _syncObject = new(); diff --git a/src/EFCore/Infrastructure/ModelSource.cs b/src/EFCore/Infrastructure/ModelSource.cs index 80a7130d588..009e089103b 100644 --- a/src/EFCore/Infrastructure/ModelSource.cs +++ b/src/EFCore/Infrastructure/ModelSource.cs @@ -27,6 +27,9 @@ namespace Microsoft.EntityFrameworkCore.Infrastructure /// This service cannot depend on services registered as . /// /// + /// + /// See Implementation of database providers and extensions for more information. + /// public class ModelSource : IModelSource { private readonly object _syncObject = new(); diff --git a/src/EFCore/Infrastructure/ModelValidator.cs b/src/EFCore/Infrastructure/ModelValidator.cs index 46b36c93f2c..37896354926 100644 --- a/src/EFCore/Infrastructure/ModelValidator.cs +++ b/src/EFCore/Infrastructure/ModelValidator.cs @@ -26,6 +26,9 @@ namespace Microsoft.EntityFrameworkCore.Infrastructure /// This service cannot depend on services registered as . /// /// + /// + /// See Implementation of database providers and extensions for more information. + /// public class ModelValidator : IModelValidator { private static readonly IEnumerable _dictionaryProperties = diff --git a/src/EFCore/Infrastructure/PooledDbContextFactory.cs b/src/EFCore/Infrastructure/PooledDbContextFactory.cs index ba5274351ed..232b54d0a2d 100644 --- a/src/EFCore/Infrastructure/PooledDbContextFactory.cs +++ b/src/EFCore/Infrastructure/PooledDbContextFactory.cs @@ -17,6 +17,11 @@ namespace Microsoft.EntityFrameworkCore.Infrastructure /// methods. /// /// + /// + /// See Using DbContext with dependency injection, + /// Using DbContext factories, and + /// Using DbContext pooling for more information. + /// public class PooledDbContextFactory : IDbContextFactory where TContext : DbContext { diff --git a/src/EFCore/Infrastructure/ServiceCharacteristics.cs b/src/EFCore/Infrastructure/ServiceCharacteristics.cs index 66501208559..7b2b2b9378f 100644 --- a/src/EFCore/Infrastructure/ServiceCharacteristics.cs +++ b/src/EFCore/Infrastructure/ServiceCharacteristics.cs @@ -8,6 +8,9 @@ namespace Microsoft.EntityFrameworkCore.Infrastructure /// /// Characteristics of a given EF service. /// + /// + /// See Implementation of database providers and extensions for more information. + /// public readonly struct ServiceCharacteristics { /// diff --git a/src/EFCore/Infrastructure/ServiceCollectionMap.cs b/src/EFCore/Infrastructure/ServiceCollectionMap.cs index 797436eb13c..0b4cbe3ed54 100644 --- a/src/EFCore/Infrastructure/ServiceCollectionMap.cs +++ b/src/EFCore/Infrastructure/ServiceCollectionMap.cs @@ -21,6 +21,9 @@ namespace Microsoft.EntityFrameworkCore.Infrastructure /// been completed. /// /// + /// + /// See Implementation of database providers and extensions for more information. + /// public class ServiceCollectionMap : IInfrastructure { private readonly InternalServiceCollectionMap _map; diff --git a/src/EFCore/Infrastructure/TypeExtensions.cs b/src/EFCore/Infrastructure/TypeExtensions.cs index 6851a84b851..8e970f7f8ad 100644 --- a/src/EFCore/Infrastructure/TypeExtensions.cs +++ b/src/EFCore/Infrastructure/TypeExtensions.cs @@ -14,6 +14,9 @@ namespace Microsoft.EntityFrameworkCore.Infrastructure /// not used in application code. /// /// + /// + /// See Implementation of database providers and extensions for more information. + /// public static class TypeExtensions { /// diff --git a/src/EFCore/Infrastructure/Uniquifier.cs b/src/EFCore/Infrastructure/Uniquifier.cs index 32383d08136..8ed21684487 100644 --- a/src/EFCore/Infrastructure/Uniquifier.cs +++ b/src/EFCore/Infrastructure/Uniquifier.cs @@ -10,6 +10,9 @@ namespace Microsoft.EntityFrameworkCore.Infrastructure /// /// Provides methods for manipulating string identifiers. /// + /// + /// See Implementation of database providers and extensions for more information. + /// public static class Uniquifier { /// diff --git a/src/EFCore/ModelBuilder.cs b/src/EFCore/ModelBuilder.cs index 5edf987dca7..48cf8f04131 100644 --- a/src/EFCore/ModelBuilder.cs +++ b/src/EFCore/ModelBuilder.cs @@ -26,7 +26,7 @@ namespace Microsoft.EntityFrameworkCore /// /// /// - /// For more information, see Modeling entity types and relationships in EF Core. + /// See Modeling entity types and relationships in EF Core for more information. /// public class ModelBuilder : IInfrastructure { @@ -37,8 +37,8 @@ public class ModelBuilder : IInfrastructure /// apply a set of conventions. /// /// - /// For more information, see Modeling entity types and relationships and - /// see EF Core model-building conventions. + /// See Modeling entity types and relationships and + /// EF Core model-building conventions for more information. /// /// The conventions to be applied to the model. public ModelBuilder(ConventionSet conventions) @@ -51,8 +51,8 @@ public ModelBuilder(ConventionSet conventions) /// apply a set of conventions. /// /// - /// For more information, see Modeling entity types and relationships and - /// see EF Core model-building conventions. + /// See Modeling entity types and relationships and + /// EF Core model-building conventions for more information. /// /// The conventions to be applied to the model. /// The dependencies object for the model. @@ -87,8 +87,8 @@ public ModelBuilder(ConventionSet conventions, ModelDependencies? modelDependenc /// /// /// - /// For more information, see Modeling entity types and relationships and - /// see EF Core model-building conventions. + /// See Modeling entity types and relationships and + /// EF Core model-building conventions for more information. /// public ModelBuilder() { @@ -114,7 +114,7 @@ public ModelBuilder(IMutableModel model) /// The model being configured. /// /// - /// For more information, see Modeling entity types and relationships in EF Core. + /// See Modeling entity types and relationships in EF Core for more information. /// public virtual IMutableModel Model => Builder.Metadata; @@ -152,7 +152,7 @@ IConventionModelBuilder IInfrastructure.Instance /// If the entity type is not already part of the model, it will be added to the model. /// /// - /// For more information, see Modeling entity types. + /// See Modeling entity types for more information. /// /// The entity type to be configured. /// An object that can be used to configure the entity type. @@ -174,9 +174,8 @@ public virtual EntityTypeBuilder Entity() /// /// /// - /// For more information, see - /// Modeling entity types, and - /// Shared entity types. + /// See Modeling entity types and + /// Shared entity types for more information. /// /// The CLR type of the entity type to be configured. /// The name of the entity type to be configured. @@ -194,7 +193,7 @@ public virtual EntityTypeBuilder SharedTypeEntity(string name) /// If the entity type is not already part of the model, it will be added to the model. /// /// - /// For more information, see Modeling entity types. + /// See Modeling entity types for more information. /// /// The entity type to be configured. /// An object that can be used to configure the entity type. @@ -211,7 +210,7 @@ public virtual EntityTypeBuilder Entity(Type type) /// a new entity type that does not have a corresponding CLR type will be added to the model. /// /// - /// For more information, see Modeling entity types. + /// See Modeling entity types for more information. /// /// The name of the entity type to be configured. /// An object that can be used to configure the entity type. @@ -236,9 +235,8 @@ public virtual EntityTypeBuilder Entity(string name) /// /// /// - /// For more information, see - /// Modeling entity types, and - /// Shared entity types. + /// See Modeling entity types and + /// Shared entity types for more information. /// /// The name of the entity type to be configured. /// The CLR type of the entity type to be configured. @@ -263,7 +261,7 @@ public virtual EntityTypeBuilder SharedTypeEntity(string name, Type type) /// /// /// - /// For more information, see Modeling entity types. + /// See Modeling entity types for more information. /// /// The entity type to be configured. /// An action that performs configuration of the entity type. @@ -299,9 +297,8 @@ public virtual ModelBuilder Entity(Action> b /// /// /// - /// For more information, see - /// Modeling entity types, and - /// Shared entity types. + /// See Modeling entity types and + /// Shared entity types for more information. /// /// The CLR type of the entity type to be configured. /// The name of the entity type to be configured. @@ -333,7 +330,7 @@ public virtual ModelBuilder SharedTypeEntity( /// /// /// - /// For more information, see Modeling entity types. + /// See Modeling entity types for more information. /// /// The entity type to be configured. /// An action that performs configuration of the entity type. @@ -362,7 +359,7 @@ public virtual ModelBuilder Entity(Type type, Action buildAct /// /// /// - /// For more information, see Modeling entity types. + /// See Modeling entity types for more information. /// /// The name of the entity type to be configured. /// An action that performs configuration of the entity type. @@ -397,9 +394,8 @@ public virtual ModelBuilder Entity(string name, Action buildA /// /// /// - /// For more information, see - /// Modeling entity types, and - /// Shared entity types. + /// See Modeling entity types and + /// Shared entity types for more information. /// /// The name of the entity type to be configured. /// The CLR type of the entity type to be configured. @@ -425,7 +421,7 @@ public virtual ModelBuilder SharedTypeEntity( /// the model that were added by convention. /// /// - /// For more information, see Modeling entity types. + /// See Modeling entity types for more information. /// /// The entity type to be removed from the model. /// @@ -440,7 +436,7 @@ public virtual ModelBuilder Ignore() /// the model that were added by convention. /// /// - /// For more information, see Modeling entity types. + /// See Modeling entity types for more information. /// /// The entity type to be removed from the model. /// @@ -460,7 +456,7 @@ public virtual ModelBuilder Ignore(Type type) /// the model that were added by convention. /// /// - /// For more information, see Modeling entity types. + /// See Modeling entity types for more information. /// /// The name of the entity type to be removed from the model. /// @@ -479,7 +475,7 @@ public virtual ModelBuilder Ignore(string typeName) /// Applies configuration that is defined in an instance. /// /// - /// For more information, see Modeling entity types and relationships. + /// See Modeling entity types and relationships for more information. /// /// The entity type to be configured. /// The configuration to be applied. @@ -501,7 +497,7 @@ public virtual ModelBuilder ApplyConfiguration(IEntityTypeConfiguration /// instances that are defined in provided assembly. /// /// - /// For more information, see Modeling entity types and relationships. + /// See Modeling entity types and relationships for more information. /// /// The assembly to scan. /// Optional predicate to filter types within the assembly. @@ -552,7 +548,7 @@ public virtual ModelBuilder ApplyConfigurationsFromAssembly( /// separate owned type instances. /// /// - /// For more information, see Owned types in EF Core. + /// See Owned types in EF Core for more information. /// /// The entity type to be configured. public virtual OwnedEntityTypeBuilder Owned() @@ -568,7 +564,7 @@ public virtual OwnedEntityTypeBuilder Owned() /// separate owned type instances. /// /// - /// For more information, see Owned types in EF Core. + /// See Owned types in EF Core for more information. /// /// The entity type to be configured. public virtual OwnedEntityTypeBuilder Owned(Type type) @@ -585,7 +581,7 @@ public virtual OwnedEntityTypeBuilder Owned(Type type) /// This strategy indicates how the context detects changes to properties for an instance of an entity type. /// /// - /// For more information, see Change detection and notifications. + /// Ssee Change detection and notifications for more information. /// /// The change tracking strategy to be used. /// @@ -610,7 +606,7 @@ public virtual ModelBuilder HasChangeTrackingStrategy(ChangeTrackingStrategy cha /// /// /// - /// For more information, see Property versus field access in EF Core. + /// See Property versus field access in EF Core for more information. /// /// The to use for properties of this model. /// diff --git a/src/EFCore/ModelConfigurationBuilder.cs b/src/EFCore/ModelConfigurationBuilder.cs index 40c468d2099..3087a881c3f 100644 --- a/src/EFCore/ModelConfigurationBuilder.cs +++ b/src/EFCore/ModelConfigurationBuilder.cs @@ -23,7 +23,7 @@ namespace Microsoft.EntityFrameworkCore /// /// /// - /// For more information, see Pre-convention model building in EF Core. + /// See Pre-convention model building in EF Core for more information. /// public class ModelConfigurationBuilder { @@ -34,7 +34,7 @@ public class ModelConfigurationBuilder /// Initializes a new instance of the . /// /// - /// For more information, see Pre-convention model building in EF Core. + /// See Pre-convention model building in EF Core for more information. /// /// The conventions to be applied during model building. public ModelConfigurationBuilder(ConventionSet conventions) @@ -57,7 +57,7 @@ public ModelConfigurationBuilder(ConventionSet conventions) /// Prevents the conventions from the given type from discovering properties of the given or derived types. /// /// - /// For more information, see Pre-convention model building in EF Core. + /// See Pre-convention model building in EF Core for more information. /// /// The type to be ignored. /// @@ -70,7 +70,7 @@ public virtual ModelConfigurationBuilder IgnoreAny() /// Prevents the conventions from the given type from discovering properties of the given or derived types. /// /// - /// For more information, see Pre-convention model building in EF Core. + /// See Pre-convention model building in EF Core for more information. /// /// The type to be ignored. /// @@ -94,7 +94,7 @@ public virtual ModelConfigurationBuilder IgnoreAny(Type type) /// /// /// - /// For more information, see Pre-convention model building in EF Core. + /// See Pre-convention model building in EF Core for more information. /// /// The property type to be configured. /// An object that can be used to configure the properties. @@ -114,7 +114,7 @@ public virtual PropertiesConfigurationBuilder Properties() /// /// /// - /// For more information, see Pre-convention model building in EF Core. + /// See Pre-convention model building in EF Core for more information. /// /// The property type to be configured. /// An action that performs configuration of the property. @@ -142,7 +142,7 @@ public virtual ModelConfigurationBuilder Properties( /// /// /// - /// For more information, see Pre-convention model building in EF Core. + /// See Pre-convention model building in EF Core for more information. /// /// The property type to be configured. /// An object that can be used to configure the property. @@ -165,7 +165,7 @@ public virtual PropertiesConfigurationBuilder Properties(Type propertyType) /// /// /// - /// For more information, see Pre-convention model building in EF Core. + /// See Pre-convention model building in EF Core for more information. /// /// The property type to be configured. /// An action that performs configuration of the property. @@ -200,7 +200,7 @@ public virtual ModelConfigurationBuilder Properties( /// /// /// - /// For more information, see Pre-convention model building in EF Core. + /// See Pre-convention model building in EF Core for more information. /// /// The scalar type to be configured. /// An object that can be used to configure the scalars. @@ -226,7 +226,7 @@ public virtual TypeMappingConfigurationBuilder DefaultTypeMapping /// /// - /// For more information, see Pre-convention model building in EF Core. + /// See Pre-convention model building in EF Core for more information. /// /// The scalar type to be configured. /// An action that performs configuration for the scalars. @@ -259,7 +259,7 @@ public virtual ModelConfigurationBuilder DefaultTypeMapping( /// /// /// - /// For more information, see Pre-convention model building in EF Core. + /// See Pre-convention model building in EF Core for more information. /// /// The scalar type to be configured. /// An object that can be used to configure the scalars. @@ -287,7 +287,7 @@ public virtual TypeMappingConfigurationBuilder DefaultTypeMapping(Type scalarTyp /// /// /// - /// For more information, see Pre-convention model building in EF Core. + /// See Pre-convention model building in EF Core for more information. /// /// The scalar type to be configured. /// An action that performs configuration for the scalars. @@ -313,7 +313,7 @@ public virtual ModelConfigurationBuilder DefaultTypeMapping( /// explicitly in cases where the automatic execution is not possible. /// /// - /// For more information, see Pre-convention model building in EF Core. + /// See Pre-convention model building in EF Core for more information. /// /// The dependencies object used during model building. /// The configured . diff --git a/src/EFCore/PropertyAccessMode.cs b/src/EFCore/PropertyAccessMode.cs index 5211ae5e166..be6bacb0104 100644 --- a/src/EFCore/PropertyAccessMode.cs +++ b/src/EFCore/PropertyAccessMode.cs @@ -18,7 +18,7 @@ namespace Microsoft.EntityFrameworkCore /// /// /// - /// For more information, see Property versus field access in EF Core. + /// See Property versus field access in EF Core for more information. /// public enum PropertyAccessMode { diff --git a/src/EFCore/QueryTrackingBehavior.cs b/src/EFCore/QueryTrackingBehavior.cs index ce34d878daf..7b532835182 100644 --- a/src/EFCore/QueryTrackingBehavior.cs +++ b/src/EFCore/QueryTrackingBehavior.cs @@ -9,7 +9,7 @@ namespace Microsoft.EntityFrameworkCore /// Indicates how the results of a query are tracked by the . /// /// - /// For more information, see Tracking vs. no-tracking queries in EF Core. + /// See Tracking vs. no-tracking queries in EF Core for more information. /// public enum QueryTrackingBehavior { diff --git a/src/EFCore/SaveChangesEventArgs.cs b/src/EFCore/SaveChangesEventArgs.cs index 99c5a216305..675d92272dc 100644 --- a/src/EFCore/SaveChangesEventArgs.cs +++ b/src/EFCore/SaveChangesEventArgs.cs @@ -9,8 +9,8 @@ namespace Microsoft.EntityFrameworkCore /// Base event arguments for the and events. /// /// - /// For more information, see Saving data in EF Core and - /// EF Core events. + /// See Saving data in EF Core and + /// EF Core events for more information. /// public abstract class SaveChangesEventArgs : EventArgs { diff --git a/src/EFCore/SaveChangesFailedEventArgs.cs b/src/EFCore/SaveChangesFailedEventArgs.cs index 5adc1219ca8..1db249cd515 100644 --- a/src/EFCore/SaveChangesFailedEventArgs.cs +++ b/src/EFCore/SaveChangesFailedEventArgs.cs @@ -9,8 +9,8 @@ namespace Microsoft.EntityFrameworkCore /// Event arguments for the event. /// /// - /// For more information, see Saving data in EF Core and - /// EF Core events. + /// See Saving data in EF Core and + /// EF Core events for more information. /// public class SaveChangesFailedEventArgs : SaveChangesEventArgs { diff --git a/src/EFCore/SavedChangesEventArgs.cs b/src/EFCore/SavedChangesEventArgs.cs index 2da05cff2ea..104af04d6e7 100644 --- a/src/EFCore/SavedChangesEventArgs.cs +++ b/src/EFCore/SavedChangesEventArgs.cs @@ -7,8 +7,8 @@ namespace Microsoft.EntityFrameworkCore /// Event arguments for the event. /// /// - /// For more information, see Saving data in EF Core and - /// EF Core events. + /// See Saving data in EF Core and + /// EF Core events for more information. /// public class SavedChangesEventArgs : SaveChangesEventArgs { diff --git a/src/EFCore/SavingChangesEventArgs.cs b/src/EFCore/SavingChangesEventArgs.cs index 1b8b65c1e52..0774c3493e3 100644 --- a/src/EFCore/SavingChangesEventArgs.cs +++ b/src/EFCore/SavingChangesEventArgs.cs @@ -7,8 +7,8 @@ namespace Microsoft.EntityFrameworkCore /// Event arguments for the event. /// /// - /// For more information, see Saving data in EF Core and - /// EF Core events. + /// See Saving data in EF Core and + /// EF Core events for more information. /// public class SavingChangesEventArgs : SaveChangesEventArgs { diff --git a/src/EFCore/WarningBehavior.cs b/src/EFCore/WarningBehavior.cs index 38dcc84c798..4a843b3c00b 100644 --- a/src/EFCore/WarningBehavior.cs +++ b/src/EFCore/WarningBehavior.cs @@ -7,7 +7,7 @@ namespace Microsoft.EntityFrameworkCore /// The runtime behavior of warnings generated by Entity Framework /// /// - /// For more information, see Logging, events, and diagnostics. + /// See Logging, events, and diagnostics for more information. /// public enum WarningBehavior {