Skip to content

EF.Parameter or setting ParameterTranslationMode.Parameter doesn't work with IReadOnlySet #38671

Description

@IT-CASADO

Bug description

Unfortunately IReadOnlySet is not translated into a single parameter with using OPENJSON.

The generated SQL for the list filter:

      SELECT [b].[BlogId]
      FROM [Blogs] AS [b]
      WHERE [b].[BlogId] IN (
          SELECT [f].[value]
          FROM OPENJSON(@filterAsList) WITH ([value] int '$') AS [f]
      )

The generated SQL for IReadOnlySet filter:

      SELECT [b].[BlogId]
      FROM [Blogs] AS [b]
      WHERE [b].[BlogId] IN (@filterAsSet1, @filterAsSet2)

Your code

using Microsoft.EntityFrameworkCore;

using var dbContext = new BloggingContext();
dbContext.Database.EnsureDeleted();
dbContext.Database.EnsureCreated();

List<int> filterAsList = [1, 2];
IReadOnlySet<int> filterAsSet = filterAsList.ToHashSet();

var queryWithListFilter = await dbContext
    .Set<Blog>()
    .Where(b => filterAsList.Contains(b.BlogId))
    .ToListAsync();

var queryWithSetFilter = await dbContext
    .Set<Blog>()
    .Where(b => filterAsSet.Contains(b.BlogId))
    .ToListAsync();

class BloggingContext : DbContext
{
    protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder) =>
        optionsBuilder
            .UseSqlServer(
                "Server=(localdb)\\mssqllocaldb;Database=OpenJsonBug;Trusted_Connection=True;",
                options =>
                    options.UseParameterizedCollectionMode(ParameterTranslationMode.Parameter)
            )
            .LogTo(Console.WriteLine);

    public DbSet<Blog> Blogs { get; set; }
}

public class Blog
{
    public int BlogId { get; set; }
}

Stack traces


Verbose output

dbug: 19.07.2026 21:14:19.137 CoreEventId.ContextInitialized[10403] (Microsoft.EntityFrameworkCore.Infrastructure)
      Entity Framework Core 10.0.10 initialized 'BloggingContext' using provider 'Microsoft.EntityFrameworkCore.SqlServer:10.0.10' with options: ParameterizedCollectionTranslationMode=Parameter EngineType=SqlServer
dbug: 19.07.2026 21:14:19.144 RelationalEventId.ConnectionCreating[20005] (Microsoft.EntityFrameworkCore.Database.Connection)
      Creating DbConnection.
dbug: 19.07.2026 21:14:19.158 RelationalEventId.ConnectionCreated[20006] (Microsoft.EntityFrameworkCore.Database.Connection)
      Created DbConnection. (12ms).
dbug: 19.07.2026 21:14:19.160 RelationalEventId.ConnectionOpening[20000] (Microsoft.EntityFrameworkCore.Database.Connection)
      Opening connection to database 'OpenJsonBug' on server '(localdb)\mssqllocaldb'.
dbug: 19.07.2026 21:14:19.269 RelationalEventId.ConnectionOpened[20001] (Microsoft.EntityFrameworkCore.Database.Connection)
      Opened connection to database 'OpenJsonBug' on server '(localdb)\mssqllocaldb'.
dbug: 19.07.2026 21:14:19.271 RelationalEventId.CommandCreating[20103] (Microsoft.EntityFrameworkCore.Database.Command)
      Creating DbCommand for 'ExecuteNonQuery'.
dbug: 19.07.2026 21:14:19.274 RelationalEventId.CommandCreated[20104] (Microsoft.EntityFrameworkCore.Database.Command)
      Created DbCommand for 'ExecuteNonQuery' (2ms).
dbug: 19.07.2026 21:14:19.274 RelationalEventId.CommandInitialized[20106] (Microsoft.EntityFrameworkCore.Database.Command)
      Initialized DbCommand for 'ExecuteNonQuery' (4ms).
dbug: 19.07.2026 21:14:19.276 RelationalEventId.CommandExecuting[20100] (Microsoft.EntityFrameworkCore.Database.Command)
      Executing DbCommand [Parameters=[], CommandType='Text', CommandTimeout='30']
      SELECT 1
info: 19.07.2026 21:14:19.285 RelationalEventId.CommandExecuted[20101] (Microsoft.EntityFrameworkCore.Database.Command)
      Executed DbCommand (9ms) [Parameters=[], CommandType='Text', CommandTimeout='30']
      SELECT 1
dbug: 19.07.2026 21:14:19.286 RelationalEventId.ConnectionClosing[20002] (Microsoft.EntityFrameworkCore.Database.Connection)
      Closing connection to database 'OpenJsonBug' on server '(localdb)\mssqllocaldb'.
dbug: 19.07.2026 21:14:19.289 RelationalEventId.ConnectionClosed[20003] (Microsoft.EntityFrameworkCore.Database.Connection)
      Closed connection to database 'OpenJsonBug' on server '(localdb)\mssqllocaldb' (2ms).
dbug: 19.07.2026 21:14:19.297 RelationalEventId.ConnectionCreating[20005] (Microsoft.EntityFrameworkCore.Database.Connection)
      Creating DbConnection.
dbug: 19.07.2026 21:14:19.297 RelationalEventId.ConnectionCreated[20006] (Microsoft.EntityFrameworkCore.Database.Connection)
      Created DbConnection. (0ms).
dbug: 19.07.2026 21:14:19.297 RelationalEventId.ConnectionOpening[20000] (Microsoft.EntityFrameworkCore.Database.Connection)
      Opening connection to database 'master' on server '(localdb)\mssqllocaldb'.
dbug: 19.07.2026 21:14:19.299 RelationalEventId.ConnectionOpened[20001] (Microsoft.EntityFrameworkCore.Database.Connection)
      Opened connection to database 'master' on server '(localdb)\mssqllocaldb'.
dbug: 19.07.2026 21:14:19.299 RelationalEventId.CommandCreating[20103] (Microsoft.EntityFrameworkCore.Database.Command)
      Creating DbCommand for 'ExecuteNonQuery'.
dbug: 19.07.2026 21:14:19.299 RelationalEventId.CommandCreated[20104] (Microsoft.EntityFrameworkCore.Database.Command)
      Created DbCommand for 'ExecuteNonQuery' (0ms).
dbug: 19.07.2026 21:14:19.300 RelationalEventId.CommandInitialized[20106] (Microsoft.EntityFrameworkCore.Database.Command)
      Initialized DbCommand for 'ExecuteNonQuery' (0ms).
dbug: 19.07.2026 21:14:19.300 RelationalEventId.CommandExecuting[20100] (Microsoft.EntityFrameworkCore.Database.Command)
      Executing DbCommand [Parameters=[], CommandType='Text', CommandTimeout='60']
      IF SERVERPROPERTY('EngineEdition') <> 5
      BEGIN
          ALTER DATABASE [OpenJsonBug] SET SINGLE_USER WITH ROLLBACK IMMEDIATE;
      END;
info: 19.07.2026 21:14:19.301 RelationalEventId.CommandExecuted[20101] (Microsoft.EntityFrameworkCore.Database.Command)
      Executed DbCommand (1ms) [Parameters=[], CommandType='Text', CommandTimeout='60']
      IF SERVERPROPERTY('EngineEdition') <> 5
      BEGIN
          ALTER DATABASE [OpenJsonBug] SET SINGLE_USER WITH ROLLBACK IMMEDIATE;
      END;
dbug: 19.07.2026 21:14:19.301 RelationalEventId.CommandCreating[20103] (Microsoft.EntityFrameworkCore.Database.Command)
      Creating DbCommand for 'ExecuteNonQuery'.
dbug: 19.07.2026 21:14:19.301 RelationalEventId.CommandCreated[20104] (Microsoft.EntityFrameworkCore.Database.Command)
      Created DbCommand for 'ExecuteNonQuery' (0ms).
dbug: 19.07.2026 21:14:19.301 RelationalEventId.CommandInitialized[20106] (Microsoft.EntityFrameworkCore.Database.Command)
      Initialized DbCommand for 'ExecuteNonQuery' (0ms).
dbug: 19.07.2026 21:14:19.301 RelationalEventId.CommandExecuting[20100] (Microsoft.EntityFrameworkCore.Database.Command)
      Executing DbCommand [Parameters=[], CommandType='Text', CommandTimeout='60']
      DROP DATABASE [OpenJsonBug];
info: 19.07.2026 21:14:19.313 RelationalEventId.CommandExecuted[20101] (Microsoft.EntityFrameworkCore.Database.Command)
      Executed DbCommand (11ms) [Parameters=[], CommandType='Text', CommandTimeout='60']
      DROP DATABASE [OpenJsonBug];
dbug: 19.07.2026 21:14:19.313 RelationalEventId.ConnectionClosing[20002] (Microsoft.EntityFrameworkCore.Database.Connection)
      Closing connection to database 'master' on server '(localdb)\mssqllocaldb'.
dbug: 19.07.2026 21:14:19.313 RelationalEventId.ConnectionClosed[20003] (Microsoft.EntityFrameworkCore.Database.Connection)
      Closed connection to database 'master' on server '(localdb)\mssqllocaldb' (0ms).
dbug: 19.07.2026 21:14:19.314 RelationalEventId.ConnectionDisposing[20007] (Microsoft.EntityFrameworkCore.Database.Connection)
      Disposing connection to database 'master' on server '(localdb)\mssqllocaldb'.
dbug: 19.07.2026 21:14:19.314 RelationalEventId.ConnectionDisposed[20008] (Microsoft.EntityFrameworkCore.Database.Connection)
      Disposed connection to database '' on server '' (0ms).
dbug: 19.07.2026 21:14:19.315 RelationalEventId.ConnectionOpening[20000] (Microsoft.EntityFrameworkCore.Database.Connection)
      Opening connection to database 'OpenJsonBug' on server '(localdb)\mssqllocaldb'.
dbug: 19.07.2026 21:14:19.319 RelationalEventId.ConnectionError[20004] (Microsoft.EntityFrameworkCore.Database.Connection)
      An error occurred using the connection to database 'OpenJsonBug' on server '(localdb)\mssqllocaldb'.
dbug: 19.07.2026 21:14:19.341 RelationalEventId.ConnectionCreating[20005] (Microsoft.EntityFrameworkCore.Database.Connection)
      Creating DbConnection.
dbug: 19.07.2026 21:14:19.341 RelationalEventId.ConnectionCreated[20006] (Microsoft.EntityFrameworkCore.Database.Connection)
      Created DbConnection. (0ms).
dbug: 19.07.2026 21:14:19.341 RelationalEventId.ConnectionOpening[20000] (Microsoft.EntityFrameworkCore.Database.Connection)
      Opening connection to database 'master' on server '(localdb)\mssqllocaldb'.
dbug: 19.07.2026 21:14:19.341 RelationalEventId.ConnectionOpened[20001] (Microsoft.EntityFrameworkCore.Database.Connection)
      Opened connection to database 'master' on server '(localdb)\mssqllocaldb'.
dbug: 19.07.2026 21:14:19.341 RelationalEventId.CommandCreating[20103] (Microsoft.EntityFrameworkCore.Database.Command)
      Creating DbCommand for 'ExecuteNonQuery'.
dbug: 19.07.2026 21:14:19.341 RelationalEventId.CommandCreated[20104] (Microsoft.EntityFrameworkCore.Database.Command)
      Created DbCommand for 'ExecuteNonQuery' (0ms).
dbug: 19.07.2026 21:14:19.341 RelationalEventId.CommandInitialized[20106] (Microsoft.EntityFrameworkCore.Database.Command)
      Initialized DbCommand for 'ExecuteNonQuery' (0ms).
dbug: 19.07.2026 21:14:19.341 RelationalEventId.CommandExecuting[20100] (Microsoft.EntityFrameworkCore.Database.Command)
      Executing DbCommand [Parameters=[], CommandType='Text', CommandTimeout='60']
      CREATE DATABASE [OpenJsonBug];
info: 19.07.2026 21:14:19.414 RelationalEventId.CommandExecuted[20101] (Microsoft.EntityFrameworkCore.Database.Command)
      Executed DbCommand (73ms) [Parameters=[], CommandType='Text', CommandTimeout='60']
      CREATE DATABASE [OpenJsonBug];
dbug: 19.07.2026 21:14:19.415 RelationalEventId.CommandCreating[20103] (Microsoft.EntityFrameworkCore.Database.Command)
      Creating DbCommand for 'ExecuteNonQuery'.
dbug: 19.07.2026 21:14:19.415 RelationalEventId.CommandCreated[20104] (Microsoft.EntityFrameworkCore.Database.Command)
      Created DbCommand for 'ExecuteNonQuery' (0ms).
dbug: 19.07.2026 21:14:19.415 RelationalEventId.CommandInitialized[20106] (Microsoft.EntityFrameworkCore.Database.Command)
      Initialized DbCommand for 'ExecuteNonQuery' (0ms).
dbug: 19.07.2026 21:14:19.415 RelationalEventId.CommandExecuting[20100] (Microsoft.EntityFrameworkCore.Database.Command)
      Executing DbCommand [Parameters=[], CommandType='Text', CommandTimeout='60']
      IF SERVERPROPERTY('EngineEdition') <> 5
      BEGIN
          ALTER DATABASE [OpenJsonBug] SET READ_COMMITTED_SNAPSHOT ON;
      END;
info: 19.07.2026 21:14:19.445 RelationalEventId.CommandExecuted[20101] (Microsoft.EntityFrameworkCore.Database.Command)
      Executed DbCommand (30ms) [Parameters=[], CommandType='Text', CommandTimeout='60']
      IF SERVERPROPERTY('EngineEdition') <> 5
      BEGIN
          ALTER DATABASE [OpenJsonBug] SET READ_COMMITTED_SNAPSHOT ON;
      END;
dbug: 19.07.2026 21:14:19.445 RelationalEventId.ConnectionClosing[20002] (Microsoft.EntityFrameworkCore.Database.Connection)
      Closing connection to database 'master' on server '(localdb)\mssqllocaldb'.
dbug: 19.07.2026 21:14:19.445 RelationalEventId.ConnectionClosed[20003] (Microsoft.EntityFrameworkCore.Database.Connection)
      Closed connection to database 'master' on server '(localdb)\mssqllocaldb' (0ms).
dbug: 19.07.2026 21:14:19.446 RelationalEventId.ConnectionDisposing[20007] (Microsoft.EntityFrameworkCore.Database.Connection)
      Disposing connection to database 'master' on server '(localdb)\mssqllocaldb'.
dbug: 19.07.2026 21:14:19.446 RelationalEventId.ConnectionDisposed[20008] (Microsoft.EntityFrameworkCore.Database.Connection)
      Disposed connection to database '' on server '' (0ms).
dbug: 19.07.2026 21:14:19.446 RelationalEventId.ConnectionOpening[20000] (Microsoft.EntityFrameworkCore.Database.Connection)
      Opening connection to database 'OpenJsonBug' on server '(localdb)\mssqllocaldb'.
dbug: 19.07.2026 21:14:19.449 RelationalEventId.ConnectionOpened[20001] (Microsoft.EntityFrameworkCore.Database.Connection)
      Opened connection to database 'OpenJsonBug' on server '(localdb)\mssqllocaldb'.
dbug: 19.07.2026 21:14:19.449 RelationalEventId.CommandCreating[20103] (Microsoft.EntityFrameworkCore.Database.Command)
      Creating DbCommand for 'ExecuteNonQuery'.
dbug: 19.07.2026 21:14:19.449 RelationalEventId.CommandCreated[20104] (Microsoft.EntityFrameworkCore.Database.Command)
      Created DbCommand for 'ExecuteNonQuery' (0ms).
dbug: 19.07.2026 21:14:19.449 RelationalEventId.CommandInitialized[20106] (Microsoft.EntityFrameworkCore.Database.Command)
      Initialized DbCommand for 'ExecuteNonQuery' (0ms).
dbug: 19.07.2026 21:14:19.449 RelationalEventId.CommandExecuting[20100] (Microsoft.EntityFrameworkCore.Database.Command)
      Executing DbCommand [Parameters=[], CommandType='Text', CommandTimeout='30']
      SELECT 1
info: 19.07.2026 21:14:19.449 RelationalEventId.CommandExecuted[20101] (Microsoft.EntityFrameworkCore.Database.Command)
      Executed DbCommand (0ms) [Parameters=[], CommandType='Text', CommandTimeout='30']
      SELECT 1
dbug: 19.07.2026 21:14:19.449 RelationalEventId.ConnectionClosing[20002] (Microsoft.EntityFrameworkCore.Database.Connection)
      Closing connection to database 'OpenJsonBug' on server '(localdb)\mssqllocaldb'.
dbug: 19.07.2026 21:14:19.449 RelationalEventId.ConnectionClosed[20003] (Microsoft.EntityFrameworkCore.Database.Connection)
      Closed connection to database 'OpenJsonBug' on server '(localdb)\mssqllocaldb' (0ms).
dbug: 19.07.2026 21:14:19.475 RelationalEventId.ConnectionOpening[20000] (Microsoft.EntityFrameworkCore.Database.Connection)
      Opening connection to database 'OpenJsonBug' on server '(localdb)\mssqllocaldb'.
dbug: 19.07.2026 21:14:19.475 RelationalEventId.ConnectionOpened[20001] (Microsoft.EntityFrameworkCore.Database.Connection)
      Opened connection to database 'OpenJsonBug' on server '(localdb)\mssqllocaldb'.
dbug: 19.07.2026 21:14:19.476 RelationalEventId.TransactionStarting[20209] (Microsoft.EntityFrameworkCore.Database.Transaction)
      Beginning transaction with isolation level 'Unspecified'.
dbug: 19.07.2026 21:14:19.479 RelationalEventId.TransactionStarted[20200] (Microsoft.EntityFrameworkCore.Database.Transaction)
      Began transaction with isolation level 'ReadCommitted'.
dbug: 19.07.2026 21:14:19.479 RelationalEventId.CommandCreating[20103] (Microsoft.EntityFrameworkCore.Database.Command)
      Creating DbCommand for 'ExecuteNonQuery'.
dbug: 19.07.2026 21:14:19.479 RelationalEventId.CommandCreated[20104] (Microsoft.EntityFrameworkCore.Database.Command)
      Created DbCommand for 'ExecuteNonQuery' (0ms).
dbug: 19.07.2026 21:14:19.479 RelationalEventId.CommandInitialized[20106] (Microsoft.EntityFrameworkCore.Database.Command)
      Initialized DbCommand for 'ExecuteNonQuery' (0ms).
dbug: 19.07.2026 21:14:19.479 RelationalEventId.CommandExecuting[20100] (Microsoft.EntityFrameworkCore.Database.Command)
      Executing DbCommand [Parameters=[], CommandType='Text', CommandTimeout='30']
      CREATE TABLE [Blogs] (
          [BlogId] int NOT NULL IDENTITY,
          CONSTRAINT [PK_Blogs] PRIMARY KEY ([BlogId])
      );
info: 19.07.2026 21:14:19.483 RelationalEventId.CommandExecuted[20101] (Microsoft.EntityFrameworkCore.Database.Command)
      Executed DbCommand (3ms) [Parameters=[], CommandType='Text', CommandTimeout='30']
      CREATE TABLE [Blogs] (
          [BlogId] int NOT NULL IDENTITY,
          CONSTRAINT [PK_Blogs] PRIMARY KEY ([BlogId])
      );
dbug: 19.07.2026 21:14:19.483 RelationalEventId.TransactionCommitting[20210] (Microsoft.EntityFrameworkCore.Database.Transaction)
      Committing transaction.
dbug: 19.07.2026 21:14:19.485 RelationalEventId.TransactionCommitted[20202] (Microsoft.EntityFrameworkCore.Database.Transaction)
      Committed transaction.
dbug: 19.07.2026 21:14:19.486 RelationalEventId.TransactionDisposed[20204] (Microsoft.EntityFrameworkCore.Database.Transaction)
      Disposing transaction.
dbug: 19.07.2026 21:14:19.486 RelationalEventId.ConnectionClosing[20002] (Microsoft.EntityFrameworkCore.Database.Connection)
      Closing connection to database 'OpenJsonBug' on server '(localdb)\mssqllocaldb'.
dbug: 19.07.2026 21:14:19.486 RelationalEventId.ConnectionClosed[20003] (Microsoft.EntityFrameworkCore.Database.Connection)
      Closed connection to database 'OpenJsonBug' on server '(localdb)\mssqllocaldb' (0ms).
dbug: 19.07.2026 21:14:19.503 CoreEventId.QueryCompilationStarting[10111] (Microsoft.EntityFrameworkCore.Query)
      Compiling query expression:
      'DbSet<Blog>()
          .Where(b => @filterAsList.Contains(b.BlogId))'
dbug: 19.07.2026 21:14:19.618 CoreEventId.QueryExecutionPlanned[10107] (Microsoft.EntityFrameworkCore.Query)
      Generated query execution expression:
      'queryContext => SingleQueryingEnumerable.Create<Blog>(
          relationalQueryContext: (RelationalQueryContext)queryContext,
          relationalCommandResolver: parameters => [LIFTABLE Constant: RelationalCommandCache.QueryExpression(
              Projection Mapping:
                  EmptyProjectionMember -> Dictionary<IPropertyBase, int> { [Property: Blog.BlogId (int) Required PK AfterSave:Throw ValueGenerated.OnAdd, 0] }
              SELECT b.BlogId
              FROM Blogs AS b
              WHERE b.BlogId IN (
                  SELECT f.value
                  FROM OPENJSON(@filterAsList) WITH (value int '') AS f)) | Resolver: c => new RelationalCommandCache(
              c.Dependencies.MemoryCache,
              c.RelationalDependencies.QuerySqlGeneratorFactory,
              c.RelationalDependencies.RelationalParameterBasedSqlProcessorFactory,
              Projection Mapping:
                  EmptyProjectionMember -> Dictionary<IPropertyBase, int> { [Property: Blog.BlogId (int) Required PK AfterSave:Throw ValueGenerated.OnAdd, 0] }
              SELECT b.BlogId
              FROM Blogs AS b
              WHERE b.BlogId IN (
                  SELECT f.value
                  FROM OPENJSON(@filterAsList) WITH (value int '') AS f),
              False,
              Parameter
          )].GetRelationalCommandTemplate(parameters),
          readerColumns: null,
          shaper: (queryContext, dataReader, resultContext, resultCoordinator) =>
          {
              Blog entity;
              entity =
              {
                  MaterializationContext materializationContext1;
                  IEntityType entityType1;
                  Blog instance1;
                  InternalEntityEntry entry1;
                  bool hasNullKey1;
                  materializationContext1 = new MaterializationContext(
                      [LIFTABLE Constant: ValueBuffer | Resolver: _ => (object)ValueBuffer.Empty],
                      queryContext.Context
                  );
                  instance1 = default(Blog);
                  entry1 = queryContext.TryGetEntry(
                      key: [LIFTABLE Constant: Key: Blog.BlogId PK | Resolver: c => c.Dependencies.Model.FindEntityType("Blog").FindPrimaryKey()],
                      keyValues: new object[]{ (object)dataReader.GetInt32(0) },
                      throwOnNullKey: True,
                      hasNullKey: hasNullKey1);
                  !(hasNullKey1) ? entry1 != default(InternalEntityEntry) ?
                  {
                      entityType1 = entry1.EntityType;
                      return instance1 = (Blog)entry1.Entity;
                  } :
                  {
                      ISnapshot shadowSnapshot1;
                      shadowSnapshot1 = [LIFTABLE Constant: Snapshot | Resolver: _ => Snapshot.Empty];
                      entityType1 = [LIFTABLE Constant: EntityType: Blog | Resolver: namelessParameter{0} => namelessParameter{0}.Dependencies.Model.FindEntityType("Blog")];
                      instance1 = switch (entityType1)
                      {
                          case [LIFTABLE Constant: EntityType: Blog | Resolver: namelessParameter{1} => namelessParameter{1}.Dependencies.Model.FindEntityType("Blog")]:
                              {
                                  return
                                  {
                                      Blog instance;
                                      instance = new Blog();
                                      instance.<BlogId>k__BackingField = dataReader.GetInt32(0);
                                      (instance is IInjectableService) ? ((IInjectableService)instance).Injected(
                                          context: materializationContext1.Context,
                                          entity: instance,
                                          queryTrackingBehavior: TrackAll,
                                          structuralType: [LIFTABLE Constant: EntityType: Blog | Resolver: namelessParameter{2} => namelessParameter{2}.Dependencies.Model.FindEntityType("Blog")]) : default(void);
                                      return instance;
                                  }}
                          default:
                              default(Blog)
                      }
                      ;
                      entry1 = entityType1 == default(IEntityType) ? default(InternalEntityEntry) : queryContext.StartTracking(
                          entityType: entityType1,
                          entity: instance1,
                          snapshot: shadowSnapshot1);
                      return instance1;
                  } : default(void);
                  return instance1;
              };
              return entity;
          },
          contextType: BloggingContext,
          standAloneStateManager: False,
          detailedErrorsEnabled: False,
          threadSafetyChecksEnabled: True)'
dbug: 19.07.2026 21:14:19.634 RelationalEventId.ConnectionOpening[20000] (Microsoft.EntityFrameworkCore.Database.Connection)
      Opening connection to database 'OpenJsonBug' on server '(localdb)\mssqllocaldb'.
dbug: 19.07.2026 21:14:19.635 RelationalEventId.ConnectionOpened[20001] (Microsoft.EntityFrameworkCore.Database.Connection)
      Opened connection to database 'OpenJsonBug' on server '(localdb)\mssqllocaldb'.
dbug: 19.07.2026 21:14:19.635 RelationalEventId.CommandCreating[20103] (Microsoft.EntityFrameworkCore.Database.Command)
      Creating DbCommand for 'ExecuteReader'.
dbug: 19.07.2026 21:14:19.635 RelationalEventId.CommandCreated[20104] (Microsoft.EntityFrameworkCore.Database.Command)
      Created DbCommand for 'ExecuteReader' (0ms).
dbug: 19.07.2026 21:14:19.640 RelationalEventId.CommandInitialized[20106] (Microsoft.EntityFrameworkCore.Database.Command)
      Initialized DbCommand for 'ExecuteReader' (4ms).
dbug: 19.07.2026 21:14:19.641 RelationalEventId.CommandExecuting[20100] (Microsoft.EntityFrameworkCore.Database.Command)
      Executing DbCommand [Parameters=[@filterAsList='?' (Size = 4000)], CommandType='Text', CommandTimeout='30']
      SELECT [b].[BlogId]
      FROM [Blogs] AS [b]
      WHERE [b].[BlogId] IN (
          SELECT [f].[value]
          FROM OPENJSON(@filterAsList) WITH ([value] int '$') AS [f]
      )
info: 19.07.2026 21:14:19.656 RelationalEventId.CommandExecuted[20101] (Microsoft.EntityFrameworkCore.Database.Command)
      Executed DbCommand (16ms) [Parameters=[@filterAsList='?' (Size = 4000)], CommandType='Text', CommandTimeout='30']
      SELECT [b].[BlogId]
      FROM [Blogs] AS [b]
      WHERE [b].[BlogId] IN (
          SELECT [f].[value]
          FROM OPENJSON(@filterAsList) WITH ([value] int '$') AS [f]
      )
dbug: 19.07.2026 21:14:19.661 RelationalEventId.DataReaderClosing[20301] (Microsoft.EntityFrameworkCore.Database.Command)
      Closing data reader to 'OpenJsonBug' on server '(localdb)\mssqllocaldb'.
dbug: 19.07.2026 21:14:19.662 RelationalEventId.DataReaderDisposing[20300] (Microsoft.EntityFrameworkCore.Database.Command)
      A data reader for 'OpenJsonBug' on server '(localdb)\mssqllocaldb' is being disposed after spending 5ms reading results.
dbug: 19.07.2026 21:14:19.663 RelationalEventId.ConnectionClosing[20002] (Microsoft.EntityFrameworkCore.Database.Connection)
      Closing connection to database 'OpenJsonBug' on server '(localdb)\mssqllocaldb'.
dbug: 19.07.2026 21:14:19.663 RelationalEventId.ConnectionClosed[20003] (Microsoft.EntityFrameworkCore.Database.Connection)
      Closed connection to database 'OpenJsonBug' on server '(localdb)\mssqllocaldb' (0ms).
dbug: 19.07.2026 21:14:19.664 CoreEventId.QueryCompilationStarting[10111] (Microsoft.EntityFrameworkCore.Query)
      Compiling query expression:
      'DbSet<Blog>()
          .Where(b => @filterAsSet.Contains(b.BlogId))'
dbug: 19.07.2026 21:14:19.674 CoreEventId.QueryExecutionPlanned[10107] (Microsoft.EntityFrameworkCore.Query)
      Generated query execution expression:
      'queryContext => SingleQueryingEnumerable.Create<Blog>(
          relationalQueryContext: (RelationalQueryContext)queryContext,
          relationalCommandResolver: parameters => [LIFTABLE Constant: RelationalCommandCache.QueryExpression(
              Projection Mapping:
                  EmptyProjectionMember -> Dictionary<IPropertyBase, int> { [Property: Blog.BlogId (int) Required PK AfterSave:Throw ValueGenerated.OnAdd, 0] }
              SELECT b.BlogId
              FROM Blogs AS b
              WHERE b.BlogId IN (@filterAsSet)) | Resolver: c => new RelationalCommandCache(
              c.Dependencies.MemoryCache,
              c.RelationalDependencies.QuerySqlGeneratorFactory,
              c.RelationalDependencies.RelationalParameterBasedSqlProcessorFactory,
              Projection Mapping:
                  EmptyProjectionMember -> Dictionary<IPropertyBase, int> { [Property: Blog.BlogId (int) Required PK AfterSave:Throw ValueGenerated.OnAdd, 0] }
              SELECT b.BlogId
              FROM Blogs AS b
              WHERE b.BlogId IN (@filterAsSet),
              False,
              Parameter
          )].GetRelationalCommandTemplate(parameters),
          readerColumns: null,
          shaper: (queryContext, dataReader, resultContext, resultCoordinator) =>
          {
              Blog entity;
              entity =
              {
                  MaterializationContext materializationContext1;
                  IEntityType entityType1;
                  Blog instance1;
                  InternalEntityEntry entry1;
                  bool hasNullKey1;
                  materializationContext1 = new MaterializationContext(
                      [LIFTABLE Constant: ValueBuffer | Resolver: _ => (object)ValueBuffer.Empty],
                      queryContext.Context
                  );
                  instance1 = default(Blog);
                  entry1 = queryContext.TryGetEntry(
                      key: [LIFTABLE Constant: Key: Blog.BlogId PK | Resolver: c => c.Dependencies.Model.FindEntityType("Blog").FindPrimaryKey()],
                      keyValues: new object[]{ (object)dataReader.GetInt32(0) },
                      throwOnNullKey: True,
                      hasNullKey: hasNullKey1);
                  !(hasNullKey1) ? entry1 != default(InternalEntityEntry) ?
                  {
                      entityType1 = entry1.EntityType;
                      return instance1 = (Blog)entry1.Entity;
                  } :
                  {
                      ISnapshot shadowSnapshot1;
                      shadowSnapshot1 = [LIFTABLE Constant: Snapshot | Resolver: _ => Snapshot.Empty];
                      entityType1 = [LIFTABLE Constant: EntityType: Blog | Resolver: namelessParameter{0} => namelessParameter{0}.Dependencies.Model.FindEntityType("Blog")];
                      instance1 = switch (entityType1)
                      {
                          case [LIFTABLE Constant: EntityType: Blog | Resolver: namelessParameter{1} => namelessParameter{1}.Dependencies.Model.FindEntityType("Blog")]:
                              {
                                  return
                                  {
                                      Blog instance;
                                      instance = new Blog();
                                      instance.<BlogId>k__BackingField = dataReader.GetInt32(0);
                                      (instance is IInjectableService) ? ((IInjectableService)instance).Injected(
                                          context: materializationContext1.Context,
                                          entity: instance,
                                          queryTrackingBehavior: TrackAll,
                                          structuralType: [LIFTABLE Constant: EntityType: Blog | Resolver: namelessParameter{2} => namelessParameter{2}.Dependencies.Model.FindEntityType("Blog")]) : default(void);
                                      return instance;
                                  }}
                          default:
                              default(Blog)
                      }
                      ;
                      entry1 = entityType1 == default(IEntityType) ? default(InternalEntityEntry) : queryContext.StartTracking(
                          entityType: entityType1,
                          entity: instance1,
                          snapshot: shadowSnapshot1);
                      return instance1;
                  } : default(void);
                  return instance1;
              };
              return entity;
          },
          contextType: BloggingContext,
          standAloneStateManager: False,
          detailedErrorsEnabled: False,
          threadSafetyChecksEnabled: True)'
dbug: 19.07.2026 21:14:19.677 RelationalEventId.ConnectionOpening[20000] (Microsoft.EntityFrameworkCore.Database.Connection)
      Opening connection to database 'OpenJsonBug' on server '(localdb)\mssqllocaldb'.
dbug: 19.07.2026 21:14:19.677 RelationalEventId.ConnectionOpened[20001] (Microsoft.EntityFrameworkCore.Database.Connection)
      Opened connection to database 'OpenJsonBug' on server '(localdb)\mssqllocaldb'.
dbug: 19.07.2026 21:14:19.677 RelationalEventId.CommandCreating[20103] (Microsoft.EntityFrameworkCore.Database.Command)
      Creating DbCommand for 'ExecuteReader'.
dbug: 19.07.2026 21:14:19.677 RelationalEventId.CommandCreated[20104] (Microsoft.EntityFrameworkCore.Database.Command)
      Created DbCommand for 'ExecuteReader' (0ms).
dbug: 19.07.2026 21:14:19.677 RelationalEventId.CommandInitialized[20106] (Microsoft.EntityFrameworkCore.Database.Command)
      Initialized DbCommand for 'ExecuteReader' (0ms).
dbug: 19.07.2026 21:14:19.677 RelationalEventId.CommandExecuting[20100] (Microsoft.EntityFrameworkCore.Database.Command)
      Executing DbCommand [Parameters=[@filterAsSet1='?' (DbType = Int32), @filterAsSet2='?' (DbType = Int32)], CommandType='Text', CommandTimeout='30']
      SELECT [b].[BlogId]
      FROM [Blogs] AS [b]
      WHERE [b].[BlogId] IN (@filterAsSet1, @filterAsSet2)
info: 19.07.2026 21:14:19.678 RelationalEventId.CommandExecuted[20101] (Microsoft.EntityFrameworkCore.Database.Command)
      Executed DbCommand (1ms) [Parameters=[@filterAsSet1='?' (DbType = Int32), @filterAsSet2='?' (DbType = Int32)], CommandType='Text', CommandTimeout='30']
      SELECT [b].[BlogId]
      FROM [Blogs] AS [b]
      WHERE [b].[BlogId] IN (@filterAsSet1, @filterAsSet2)
dbug: 19.07.2026 21:14:19.678 RelationalEventId.DataReaderClosing[20301] (Microsoft.EntityFrameworkCore.Database.Command)
      Closing data reader to 'OpenJsonBug' on server '(localdb)\mssqllocaldb'.
dbug: 19.07.2026 21:14:19.678 RelationalEventId.DataReaderDisposing[20300] (Microsoft.EntityFrameworkCore.Database.Command)
      A data reader for 'OpenJsonBug' on server '(localdb)\mssqllocaldb' is being disposed after spending 0ms reading results.
dbug: 19.07.2026 21:14:19.678 RelationalEventId.ConnectionClosing[20002] (Microsoft.EntityFrameworkCore.Database.Connection)
      Closing connection to database 'OpenJsonBug' on server '(localdb)\mssqllocaldb'.
dbug: 19.07.2026 21:14:19.678 RelationalEventId.ConnectionClosed[20003] (Microsoft.EntityFrameworkCore.Database.Connection)
      Closed connection to database 'OpenJsonBug' on server '(localdb)\mssqllocaldb' (0ms).
dbug: 19.07.2026 21:14:19.679 CoreEventId.ContextDisposed[10407] (Microsoft.EntityFrameworkCore.Infrastructure)
      'BloggingContext' disposed.
dbug: 19.07.2026 21:14:19.679 RelationalEventId.ConnectionDisposing[20007] (Microsoft.EntityFrameworkCore.Database.Connection)
      Disposing connection to database 'OpenJsonBug' on server '(localdb)\mssqllocaldb'.
dbug: 19.07.2026 21:14:19.679 RelationalEventId.ConnectionDisposed[20008] (Microsoft.EntityFrameworkCore.Database.Connection)
      Disposed connection to database '' on server '' (0ms).

EF Core version

10.0.10

Database provider

Microsoft.EntityFrameworkCore.SqlServer

Target framework

.NET 10.0

Operating system

Windows 11

IDE

Visual Studio 2026 (18.8.0)

Metadata

Metadata

Assignees

No one assigned

    Fields

    No fields configured for Feature.

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions