Skip to content

Commit c53ba0c

Browse files
committed
add BufferResultSets connection string option
1 parent 0fbd032 commit c53ba0c

File tree

3 files changed

+17
-0
lines changed

3 files changed

+17
-0
lines changed

src/MySqlConnector/MySqlClient/MySqlConnectionStringBuilder.cs

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -98,6 +98,12 @@ public bool AllowUserVariables
9898
set { MySqlConnectionStringOption.AllowUserVariables.SetValue(this, value); }
9999
}
100100

101+
public bool BufferResultSets
102+
{
103+
get { return MySqlConnectionStringOption.BufferResultSets.GetValue(this); }
104+
set { MySqlConnectionStringOption.BufferResultSets.SetValue(this, value); }
105+
}
106+
101107
public string CharacterSet
102108
{
103109
get { return MySqlConnectionStringOption.CharacterSet.GetValue(this); }
@@ -223,6 +229,7 @@ internal abstract class MySqlConnectionStringOption
223229

224230
// Other Options
225231
public static readonly MySqlConnectionStringOption<bool> AllowUserVariables;
232+
public static readonly MySqlConnectionStringOption<bool> BufferResultSets;
226233
public static readonly MySqlConnectionStringOption<string> CharacterSet;
227234
public static readonly MySqlConnectionStringOption<uint> ConnectionTimeout;
228235
public static readonly MySqlConnectionStringOption<bool> ConvertZeroDateTime;
@@ -324,6 +331,10 @@ static MySqlConnectionStringOption()
324331
keys: new[] { "AllowUserVariables", "Allow User Variables" },
325332
defaultValue: false));
326333

334+
AddOption(BufferResultSets = new MySqlConnectionStringOption<bool>(
335+
keys: new[] { "BufferResultSets", "Buffer Result Sets" },
336+
defaultValue: false));
337+
327338
AddOption(CharacterSet = new MySqlConnectionStringOption<string>(
328339
keys: new[] { "CharSet", "Character Set", "CharacterSet" },
329340
defaultValue: ""));

src/MySqlConnector/Serialization/ConnectionSettings.cs

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -44,6 +44,7 @@ public ConnectionSettings(MySqlConnectionStringBuilder csb)
4444

4545
// Other Options
4646
AllowUserVariables = csb.AllowUserVariables;
47+
BufferResultSets = csb.BufferResultSets;
4748
ConnectionTimeout = (int)csb.ConnectionTimeout;
4849
ConvertZeroDateTime = csb.ConvertZeroDateTime;
4950
ForceSynchronous = csb.ForceSynchronous;
@@ -82,6 +83,7 @@ private ConnectionSettings(ConnectionSettings other, bool? useCompression)
8283

8384
// Other Options
8485
AllowUserVariables = other.AllowUserVariables;
86+
BufferResultSets = other.BufferResultSets;
8587
ConnectionTimeout = other.ConnectionTimeout;
8688
ConvertZeroDateTime = other.ConvertZeroDateTime;
8789
ForceSynchronous = other.ForceSynchronous;
@@ -116,6 +118,7 @@ private ConnectionSettings(ConnectionSettings other, bool? useCompression)
116118

117119
// Other Options
118120
internal readonly bool AllowUserVariables;
121+
internal readonly bool BufferResultSets;
119122
internal readonly int ConnectionTimeout;
120123
internal readonly bool ConvertZeroDateTime;
121124
internal readonly bool ForceSynchronous;

tests/MySqlConnector.Tests/MySqlConnectionStringBuilderTests.cs

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@ public void Defaults()
2323
Assert.Equal(false, csb.ConvertZeroDateTime);
2424
Assert.Equal("", csb.Database);
2525
#if !BASELINE
26+
Assert.Equal(false, csb.BufferResultSets);
2627
Assert.Equal(false, csb.ForceSynchronous);
2728
#endif
2829
Assert.Equal(0u, csb.Keepalive);
@@ -61,6 +62,7 @@ public void ParseConnectionString()
6162
"ConnectionReset=false;" +
6263
"Convert Zero Datetime=true;" +
6364
#if !BASELINE
65+
"bufferresultsets=true;" +
6466
"forcesynchronous=true;" +
6567
#endif
6668
"Keep Alive=90;" +
@@ -85,6 +87,7 @@ public void ParseConnectionString()
8587
Assert.Equal(true, csb.ConvertZeroDateTime);
8688
Assert.Equal("schema_name", csb.Database);
8789
#if !BASELINE
90+
Assert.Equal(true, csb.BufferResultSets);
8891
Assert.Equal(true, csb.ForceSynchronous);
8992
#endif
9093
Assert.Equal(90u, csb.Keepalive);

0 commit comments

Comments
 (0)