Skip to content

Commit 0d480f2

Browse files
authored
Set TranslateParameterizedCollectionsToConstants() as a default option. (#1971)
1 parent 51985d8 commit 0d480f2

2 files changed

Lines changed: 23 additions & 4 deletions

File tree

src/EFCore.MySql/Extensions/MySqlDbContextOptionsBuilderExtensions.cs

Lines changed: 20 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -60,7 +60,11 @@ public static DbContextOptionsBuilder UseMySql(
6060

6161
((IDbContextOptionsBuilderInfrastructure)optionsBuilder).AddOrUpdateExtension(extension);
6262
ConfigureWarnings(optionsBuilder);
63-
mySqlOptionsAction?.Invoke(new MySqlDbContextOptionsBuilder(optionsBuilder));
63+
64+
var mySqlDbContextOptionsBuilder = new MySqlDbContextOptionsBuilder(optionsBuilder)
65+
.TranslateParameterizedCollectionsToConstants();
66+
67+
mySqlOptionsAction?.Invoke(mySqlDbContextOptionsBuilder);
6468

6569
return optionsBuilder;
6670
}
@@ -102,7 +106,11 @@ public static DbContextOptionsBuilder UseMySql(
102106

103107
((IDbContextOptionsBuilderInfrastructure)optionsBuilder).AddOrUpdateExtension(extension);
104108
ConfigureWarnings(optionsBuilder);
105-
mySqlOptionsAction?.Invoke(new MySqlDbContextOptionsBuilder(optionsBuilder));
109+
110+
var mySqlDbContextOptionsBuilder = new MySqlDbContextOptionsBuilder(optionsBuilder)
111+
.TranslateParameterizedCollectionsToConstants();
112+
113+
mySqlOptionsAction?.Invoke(mySqlDbContextOptionsBuilder);
106114

107115
return optionsBuilder;
108116
}
@@ -148,7 +156,11 @@ public static DbContextOptionsBuilder UseMySql(
148156

149157
((IDbContextOptionsBuilderInfrastructure)optionsBuilder).AddOrUpdateExtension(extension);
150158
ConfigureWarnings(optionsBuilder);
151-
mySqlOptionsAction?.Invoke(new MySqlDbContextOptionsBuilder(optionsBuilder));
159+
160+
var mySqlDbContextOptionsBuilder = new MySqlDbContextOptionsBuilder(optionsBuilder)
161+
.TranslateParameterizedCollectionsToConstants();
162+
163+
mySqlOptionsAction?.Invoke(mySqlDbContextOptionsBuilder);
152164

153165
return optionsBuilder;
154166
}
@@ -191,7 +203,11 @@ public static DbContextOptionsBuilder UseMySql(
191203

192204
((IDbContextOptionsBuilderInfrastructure)optionsBuilder).AddOrUpdateExtension(extension);
193205
ConfigureWarnings(optionsBuilder);
194-
mySqlOptionsAction?.Invoke(new MySqlDbContextOptionsBuilder(optionsBuilder));
206+
207+
var mySqlDbContextOptionsBuilder = new MySqlDbContextOptionsBuilder(optionsBuilder)
208+
.TranslateParameterizedCollectionsToConstants();
209+
210+
mySqlOptionsAction?.Invoke(mySqlDbContextOptionsBuilder);
195211

196212
return optionsBuilder;
197213
}

test/EFCore.MySql.FunctionalTests/TestUtilities/MySqlTestStore.cs

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -109,6 +109,9 @@ public override DbContextOptionsBuilder AddProviderOptions(DbContextOptionsBuild
109109
public static MySqlDbContextOptionsBuilder AddOptions(MySqlDbContextOptionsBuilder builder)
110110
{
111111
return builder
112+
// Our UseMySql() methods explicitly set TranslateParameterizedCollectionsToConstants() as the default, which is not the
113+
// default that the EF Core tests expect.
114+
.TranslateParameterizedCollectionsToParameters()
112115
.UseQuerySplittingBehavior(QuerySplittingBehavior.SingleQuery)
113116
.CommandTimeout(GetCommandTimeout())
114117
.ExecutionStrategy(d => new TestMySqlRetryingExecutionStrategy(d));

0 commit comments

Comments
 (0)