Skip to content

[main] Source code updates from dotnet/efcore #1518

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 2 commits into from
Jul 17, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
74 changes: 37 additions & 37 deletions src/efcore/eng/Version.Details.xml
Original file line number Diff line number Diff line change
@@ -1,80 +1,80 @@
<?xml version="1.0" encoding="utf-8"?>
<Dependencies>
<Source Uri="https://github.com/dotnet/dotnet" Mapping="efcore" Sha="3c34a3f0178f5a637d21c3f0ba5a4ee86ab8e976" BarId="275143" />
<Source Uri="https://github.com/dotnet/dotnet" Mapping="efcore" Sha="78061f4bcc414fa2054be6237b1fd3813d8edf6b" BarId="275313" />
<ProductDependencies>
<Dependency Name="Microsoft.Extensions.Caching.Memory" Version="10.0.0-preview.7.25364.102">
<Dependency Name="Microsoft.Extensions.Caching.Memory" Version="10.0.0-preview.7.25365.101">
<Uri>https://github.com/dotnet/dotnet</Uri>
<Sha>3c34a3f0178f5a637d21c3f0ba5a4ee86ab8e976</Sha>
<Sha>78061f4bcc414fa2054be6237b1fd3813d8edf6b</Sha>
</Dependency>
<Dependency Name="Microsoft.Extensions.Configuration.EnvironmentVariables" Version="10.0.0-preview.7.25364.102">
<Dependency Name="Microsoft.Extensions.Configuration.EnvironmentVariables" Version="10.0.0-preview.7.25365.101">
<Uri>https://github.com/dotnet/dotnet</Uri>
<Sha>3c34a3f0178f5a637d21c3f0ba5a4ee86ab8e976</Sha>
<Sha>78061f4bcc414fa2054be6237b1fd3813d8edf6b</Sha>
</Dependency>
<Dependency Name="Microsoft.Extensions.Configuration.Abstractions" Version="10.0.0-preview.7.25364.102">
<Dependency Name="Microsoft.Extensions.Configuration.Abstractions" Version="10.0.0-preview.7.25365.101">
<Uri>https://github.com/dotnet/dotnet</Uri>
<Sha>3c34a3f0178f5a637d21c3f0ba5a4ee86ab8e976</Sha>
<Sha>78061f4bcc414fa2054be6237b1fd3813d8edf6b</Sha>
</Dependency>
<Dependency Name="Microsoft.Extensions.Configuration.Json" Version="10.0.0-preview.7.25364.102">
<Dependency Name="Microsoft.Extensions.Configuration.Json" Version="10.0.0-preview.7.25365.101">
<Uri>https://github.com/dotnet/dotnet</Uri>
<Sha>3c34a3f0178f5a637d21c3f0ba5a4ee86ab8e976</Sha>
<Sha>78061f4bcc414fa2054be6237b1fd3813d8edf6b</Sha>
</Dependency>
<Dependency Name="Microsoft.Extensions.Configuration" Version="10.0.0-preview.7.25364.102">
<Dependency Name="Microsoft.Extensions.Configuration" Version="10.0.0-preview.7.25365.101">
<Uri>https://github.com/dotnet/dotnet</Uri>
<Sha>3c34a3f0178f5a637d21c3f0ba5a4ee86ab8e976</Sha>
<Sha>78061f4bcc414fa2054be6237b1fd3813d8edf6b</Sha>
</Dependency>
<Dependency Name="Microsoft.Extensions.DependencyInjection" Version="10.0.0-preview.7.25364.102">
<Dependency Name="Microsoft.Extensions.DependencyInjection" Version="10.0.0-preview.7.25365.101">
<Uri>https://github.com/dotnet/dotnet</Uri>
<Sha>3c34a3f0178f5a637d21c3f0ba5a4ee86ab8e976</Sha>
<Sha>78061f4bcc414fa2054be6237b1fd3813d8edf6b</Sha>
</Dependency>
<Dependency Name="Microsoft.Extensions.DependencyModel" Version="10.0.0-preview.7.25364.102">
<Dependency Name="Microsoft.Extensions.DependencyModel" Version="10.0.0-preview.7.25365.101">
<Uri>https://github.com/dotnet/dotnet</Uri>
<Sha>3c34a3f0178f5a637d21c3f0ba5a4ee86ab8e976</Sha>
<Sha>78061f4bcc414fa2054be6237b1fd3813d8edf6b</Sha>
</Dependency>
<Dependency Name="Microsoft.Extensions.HostFactoryResolver.Sources" Version="10.0.0-preview.7.25364.102">
<Dependency Name="Microsoft.Extensions.HostFactoryResolver.Sources" Version="10.0.0-preview.7.25365.101">
<Uri>https://github.com/dotnet/dotnet</Uri>
<Sha>3c34a3f0178f5a637d21c3f0ba5a4ee86ab8e976</Sha>
<Sha>78061f4bcc414fa2054be6237b1fd3813d8edf6b</Sha>
</Dependency>
<Dependency Name="Microsoft.Extensions.Logging" Version="10.0.0-preview.7.25364.102">
<Dependency Name="Microsoft.Extensions.Logging" Version="10.0.0-preview.7.25365.101">
<Uri>https://github.com/dotnet/dotnet</Uri>
<Sha>3c34a3f0178f5a637d21c3f0ba5a4ee86ab8e976</Sha>
<Sha>78061f4bcc414fa2054be6237b1fd3813d8edf6b</Sha>
</Dependency>
<Dependency Name="Microsoft.NETCore.App.Ref" Version="10.0.0-preview.7.25364.102">
<Dependency Name="Microsoft.NETCore.App.Ref" Version="10.0.0-preview.7.25365.101">
<Uri>https://github.com/dotnet/dotnet</Uri>
<Sha>3c34a3f0178f5a637d21c3f0ba5a4ee86ab8e976</Sha>
<Sha>78061f4bcc414fa2054be6237b1fd3813d8edf6b</Sha>
</Dependency>
<Dependency Name="Microsoft.NETCore.Platforms" Version="10.0.0-preview.7.25364.102">
<Dependency Name="Microsoft.NETCore.Platforms" Version="10.0.0-preview.7.25365.101">
<Uri>https://github.com/dotnet/dotnet</Uri>
<Sha>3c34a3f0178f5a637d21c3f0ba5a4ee86ab8e976</Sha>
<Sha>78061f4bcc414fa2054be6237b1fd3813d8edf6b</Sha>
</Dependency>
<Dependency Name="System.Text.Json" Version="10.0.0-preview.7.25364.102">
<Dependency Name="System.Text.Json" Version="10.0.0-preview.7.25365.101">
<Uri>https://github.com/dotnet/dotnet</Uri>
<Sha>3c34a3f0178f5a637d21c3f0ba5a4ee86ab8e976</Sha>
<Sha>78061f4bcc414fa2054be6237b1fd3813d8edf6b</Sha>
</Dependency>
<Dependency Name="System.Text.Encodings.Web" Version="10.0.0-preview.7.25364.102">
<Dependency Name="System.Text.Encodings.Web" Version="10.0.0-preview.7.25365.101">
<Uri>https://github.com/dotnet/dotnet</Uri>
<Sha>3c34a3f0178f5a637d21c3f0ba5a4ee86ab8e976</Sha>
<Sha>78061f4bcc414fa2054be6237b1fd3813d8edf6b</Sha>
</Dependency>
<Dependency Name="System.Formats.Asn1" Version="10.0.0-preview.7.25364.102">
<Dependency Name="System.Formats.Asn1" Version="10.0.0-preview.7.25365.101">
<Uri>https://github.com/dotnet/dotnet</Uri>
<Sha>3c34a3f0178f5a637d21c3f0ba5a4ee86ab8e976</Sha>
<Sha>78061f4bcc414fa2054be6237b1fd3813d8edf6b</Sha>
</Dependency>
<Dependency Name="System.Runtime.Caching" Version="10.0.0-preview.7.25364.102">
<Dependency Name="System.Runtime.Caching" Version="10.0.0-preview.7.25365.101">
<Uri>https://github.com/dotnet/dotnet</Uri>
<Sha>3c34a3f0178f5a637d21c3f0ba5a4ee86ab8e976</Sha>
<Sha>78061f4bcc414fa2054be6237b1fd3813d8edf6b</Sha>
</Dependency>
</ProductDependencies>
<ToolsetDependencies>
<Dependency Name="Microsoft.DotNet.Arcade.Sdk" Version="10.0.0-beta.25364.102">
<Dependency Name="Microsoft.DotNet.Arcade.Sdk" Version="10.0.0-beta.25365.101">
<Uri>https://github.com/dotnet/dotnet</Uri>
<Sha>3c34a3f0178f5a637d21c3f0ba5a4ee86ab8e976</Sha>
<Sha>78061f4bcc414fa2054be6237b1fd3813d8edf6b</Sha>
</Dependency>
<Dependency Name="Microsoft.DotNet.Build.Tasks.Templating" Version="10.0.0-beta.25364.102">
<Dependency Name="Microsoft.DotNet.Build.Tasks.Templating" Version="10.0.0-beta.25365.101">
<Uri>https://github.com/dotnet/dotnet</Uri>
<Sha>3c34a3f0178f5a637d21c3f0ba5a4ee86ab8e976</Sha>
<Sha>78061f4bcc414fa2054be6237b1fd3813d8edf6b</Sha>
</Dependency>
<Dependency Name="Microsoft.DotNet.Helix.Sdk" Version="10.0.0-beta.25364.102">
<Dependency Name="Microsoft.DotNet.Helix.Sdk" Version="10.0.0-beta.25365.101">
<Uri>https://github.com/dotnet/dotnet</Uri>
<Sha>3c34a3f0178f5a637d21c3f0ba5a4ee86ab8e976</Sha>
<Sha>78061f4bcc414fa2054be6237b1fd3813d8edf6b</Sha>
</Dependency>
</ToolsetDependencies>
</Dependencies>
32 changes: 16 additions & 16 deletions src/efcore/eng/Versions.props
Original file line number Diff line number Diff line change
Expand Up @@ -16,24 +16,24 @@
<UsingToolXliff>False</UsingToolXliff>
</PropertyGroup>
<PropertyGroup Label="Dependencies from dotnet/runtime">
<MicrosoftExtensionsCachingMemoryVersion>10.0.0-preview.7.25364.102</MicrosoftExtensionsCachingMemoryVersion>
<MicrosoftExtensionsConfigurationVersion>10.0.0-preview.7.25364.102</MicrosoftExtensionsConfigurationVersion>
<MicrosoftExtensionsConfigurationAbstractionsVersion>10.0.0-preview.7.25364.102</MicrosoftExtensionsConfigurationAbstractionsVersion>
<MicrosoftExtensionsConfigurationEnvironmentVariablesVersion>10.0.0-preview.7.25364.102</MicrosoftExtensionsConfigurationEnvironmentVariablesVersion>
<MicrosoftExtensionsConfigurationJsonVersion>10.0.0-preview.7.25364.102</MicrosoftExtensionsConfigurationJsonVersion>
<MicrosoftExtensionsDependencyInjectionVersion>10.0.0-preview.7.25364.102</MicrosoftExtensionsDependencyInjectionVersion>
<MicrosoftExtensionsDependencyModelVersion>10.0.0-preview.7.25364.102</MicrosoftExtensionsDependencyModelVersion>
<MicrosoftExtensionsHostFactoryResolverSourcesVersion>10.0.0-preview.7.25364.102</MicrosoftExtensionsHostFactoryResolverSourcesVersion>
<MicrosoftExtensionsLoggingVersion>10.0.0-preview.7.25364.102</MicrosoftExtensionsLoggingVersion>
<MicrosoftNETCoreAppRefVersion>10.0.0-preview.7.25364.102</MicrosoftNETCoreAppRefVersion>
<MicrosoftNETCorePlatformsVersion>10.0.0-preview.7.25364.102</MicrosoftNETCorePlatformsVersion>
<SystemTextEncodingsWebVersion>10.0.0-preview.7.25364.102</SystemTextEncodingsWebVersion>
<SystemTextJsonVersion>10.0.0-preview.7.25364.102</SystemTextJsonVersion>
<SystemFormatsAsn1Version>10.0.0-preview.7.25364.102</SystemFormatsAsn1Version>
<SystemRuntimeCachingVersion>10.0.0-preview.7.25364.102</SystemRuntimeCachingVersion>
<MicrosoftExtensionsCachingMemoryVersion>10.0.0-preview.7.25365.101</MicrosoftExtensionsCachingMemoryVersion>
<MicrosoftExtensionsConfigurationVersion>10.0.0-preview.7.25365.101</MicrosoftExtensionsConfigurationVersion>
<MicrosoftExtensionsConfigurationAbstractionsVersion>10.0.0-preview.7.25365.101</MicrosoftExtensionsConfigurationAbstractionsVersion>
<MicrosoftExtensionsConfigurationEnvironmentVariablesVersion>10.0.0-preview.7.25365.101</MicrosoftExtensionsConfigurationEnvironmentVariablesVersion>
<MicrosoftExtensionsConfigurationJsonVersion>10.0.0-preview.7.25365.101</MicrosoftExtensionsConfigurationJsonVersion>
<MicrosoftExtensionsDependencyInjectionVersion>10.0.0-preview.7.25365.101</MicrosoftExtensionsDependencyInjectionVersion>
<MicrosoftExtensionsDependencyModelVersion>10.0.0-preview.7.25365.101</MicrosoftExtensionsDependencyModelVersion>
<MicrosoftExtensionsHostFactoryResolverSourcesVersion>10.0.0-preview.7.25365.101</MicrosoftExtensionsHostFactoryResolverSourcesVersion>
<MicrosoftExtensionsLoggingVersion>10.0.0-preview.7.25365.101</MicrosoftExtensionsLoggingVersion>
<MicrosoftNETCoreAppRefVersion>10.0.0-preview.7.25365.101</MicrosoftNETCoreAppRefVersion>
<MicrosoftNETCorePlatformsVersion>10.0.0-preview.7.25365.101</MicrosoftNETCorePlatformsVersion>
<SystemTextEncodingsWebVersion>10.0.0-preview.7.25365.101</SystemTextEncodingsWebVersion>
<SystemTextJsonVersion>10.0.0-preview.7.25365.101</SystemTextJsonVersion>
<SystemFormatsAsn1Version>10.0.0-preview.7.25365.101</SystemFormatsAsn1Version>
<SystemRuntimeCachingVersion>10.0.0-preview.7.25365.101</SystemRuntimeCachingVersion>
</PropertyGroup>
<PropertyGroup Label="Dependencies from dotnet/arcade">
<MicrosoftDotNetBuildTasksTemplatingVersion>10.0.0-beta.25364.102</MicrosoftDotNetBuildTasksTemplatingVersion>
<MicrosoftDotNetBuildTasksTemplatingVersion>10.0.0-beta.25365.101</MicrosoftDotNetBuildTasksTemplatingVersion>
</PropertyGroup>
<PropertyGroup Label="Other dependencies">
<MicrosoftBuildFrameworkVersion>17.14.8</MicrosoftBuildFrameworkVersion>
Expand Down
4 changes: 2 additions & 2 deletions src/efcore/global.json
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@
}
},
"msbuild-sdks": {
"Microsoft.DotNet.Arcade.Sdk": "10.0.0-beta.25364.102",
"Microsoft.DotNet.Helix.Sdk": "10.0.0-beta.25364.102"
"Microsoft.DotNet.Arcade.Sdk": "10.0.0-beta.25365.101",
"Microsoft.DotNet.Helix.Sdk": "10.0.0-beta.25365.101"
}
}
6 changes: 4 additions & 2 deletions src/efcore/src/EFCore.Relational/EFExtensions.cs
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
// Licensed to the .NET Foundation under one or more agreements.
// The .NET Foundation licenses this file to you under the MIT license.

using System.Collections;

namespace Microsoft.EntityFrameworkCore;

/// <summary>
Expand All @@ -25,10 +27,10 @@ public static class EFExtensions
/// Within the context of an EF LINQ query, forces its argument to be inserted into the query as a multiple parameter expressions.
/// </summary>
/// <remarks>Note that this is a static method accessed through the top-level <see cref="EF" /> static type.</remarks>
/// <typeparam name="T">The type of collection element.</typeparam>
/// <typeparam name="TSource">The type of collection.</typeparam>
/// <param name="argument">The collection to be integrated as parameters into the query.</param>
/// <returns>The same value for further use in the query.</returns>
public static IEnumerable<T> MultipleParameters<T>(IEnumerable<T> argument)
public static TSource MultipleParameters<TSource>(TSource argument) where TSource : IEnumerable
=> throw new InvalidOperationException(RelationalStrings.EFMultipleParametersInvoked);
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -179,7 +179,7 @@ public virtual TBuilder ExecutionStrategy(
/// </remarks>
[Obsolete("Use UseParameterizedCollectionMode instead.")]
public virtual TBuilder TranslateParameterizedCollectionsToConstants()
=> UseParameterizedCollectionMode(ParameterizedCollectionMode.Constants);
=> UseParameterizedCollectionMode(ParameterTranslationMode.Constant);

/// <summary>
/// Configures the context to translate parameterized collections to a single array-like parameter.
Expand All @@ -202,13 +202,13 @@ public virtual TBuilder TranslateParameterizedCollectionsToConstants()
/// </remarks>
[Obsolete("Use UseParameterizedCollectionMode instead.")]
public virtual TBuilder TranslateParameterizedCollectionsToParameters()
=> UseParameterizedCollectionMode(ParameterizedCollectionMode.Parameter);
=> UseParameterizedCollectionMode(ParameterTranslationMode.Parameter);

/// <summary>
/// Configures the <see cref="ParameterizedCollectionMode" /> to use when translating parameterized collections.
/// Configures the mode to use when translating parameterized collections.
/// </summary>
/// <returns>The same builder instance so that multiple calls can be chained.</returns>
public virtual TBuilder UseParameterizedCollectionMode(ParameterizedCollectionMode parameterizedCollectionMode)
public virtual TBuilder UseParameterizedCollectionMode(ParameterTranslationMode parameterizedCollectionMode)
=> WithOption(e => (TExtension)e.WithUseParameterizedCollectionMode(parameterizedCollectionMode));

/// <summary>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ public abstract class RelationalOptionsExtension : IDbContextOptionsExtension
private string? _migrationsHistoryTableName;
private string? _migrationsHistoryTableSchema;
private Func<ExecutionStrategyDependencies, IExecutionStrategy>? _executionStrategyFactory;
private ParameterizedCollectionMode? _parameterizedCollectionMode;
private ParameterTranslationMode? _parameterizedCollectionMode;

/// <summary>
/// Creates a new set of options with everything set to default values.
Expand Down Expand Up @@ -386,16 +386,16 @@ public virtual RelationalOptionsExtension WithExecutionStrategyFactory(
/// <summary>
/// Configured translation mode for parameterized collections.
/// </summary>
public virtual ParameterizedCollectionMode ParameterizedCollectionMode
=> _parameterizedCollectionMode ?? ParameterizedCollectionMode.MultipleParameters;
public virtual ParameterTranslationMode ParameterizedCollectionMode
=> _parameterizedCollectionMode ?? ParameterTranslationMode.MultipleParameters;

/// <summary>
/// Creates a new instance with all options the same as for this instance, but with the given option changed.
/// It is unusual to call this method directly. Instead use <see cref="DbContextOptionsBuilder" />.
/// </summary>
/// <param name="parameterizedCollectionMode">The option to change.</param>
public virtual RelationalOptionsExtension WithUseParameterizedCollectionMode(
ParameterizedCollectionMode parameterizedCollectionMode)
ParameterTranslationMode parameterizedCollectionMode)
{
var clone = Clone();

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -35,13 +35,13 @@ public RelationalCommandCache(
IRelationalParameterBasedSqlProcessorFactory relationalParameterBasedSqlProcessorFactory,
Expression queryExpression,
bool useRelationalNulls,
ParameterizedCollectionMode parameterizedCollectionMode)
ParameterTranslationMode collectionParameterTranslationMode)
{
_memoryCache = memoryCache;
_querySqlGeneratorFactory = querySqlGeneratorFactory;
_queryExpression = queryExpression;
_relationalParameterBasedSqlProcessor = relationalParameterBasedSqlProcessorFactory.Create(
new RelationalParameterBasedSqlProcessorParameters(useRelationalNulls, parameterizedCollectionMode));
new RelationalParameterBasedSqlProcessorParameters(useRelationalNulls, collectionParameterTranslationMode));
}

/// <summary>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -128,7 +128,7 @@ private SqlParameterExpression VisitSqlParameter(SqlParameterExpression paramete
uniquifiedName,
parameter.Type,
parameter.IsNullable,
parameter.ShouldBeConstantized,
parameter.TranslationMode,
parameter.TypeMapping);

return _sqlParameters[newParameter.InvariantName] = newParameter;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,17 +16,17 @@ public sealed record RelationalParameterBasedSqlProcessorParameters
/// <summary>
/// Which parametrized collection translation mode should be used.
/// </summary>
public ParameterizedCollectionMode ParameterizedCollectionMode { get; init; }
public ParameterTranslationMode CollectionParameterTranslationMode { get; init; }

/// <summary>
/// Creates a new instance of <see cref="RelationalParameterBasedSqlProcessorParameters" />.
/// </summary>
/// <param name="useRelationalNulls">A value indicating if relational nulls should be used.</param>
/// <param name="parameterizedCollectionMode">Which translation mode should be used.</param>
/// <param name="collectionParameterTranslationMode">Which translation mode should be used.</param>
[EntityFrameworkInternal]
public RelationalParameterBasedSqlProcessorParameters(bool useRelationalNulls, ParameterizedCollectionMode parameterizedCollectionMode)
public RelationalParameterBasedSqlProcessorParameters(bool useRelationalNulls, ParameterTranslationMode collectionParameterTranslationMode)
{
UseRelationalNulls = useRelationalNulls;
ParameterizedCollectionMode = parameterizedCollectionMode;
CollectionParameterTranslationMode = collectionParameterTranslationMode;
}
}
Loading
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy