diff --git a/src/GraphQL.Query.Builder/QueryOptions.cs b/src/GraphQL.Query.Builder/QueryOptions.cs
index 5749338..2fae2e0 100644
--- a/src/GraphQL.Query.Builder/QueryOptions.cs
+++ b/src/GraphQL.Query.Builder/QueryOptions.cs
@@ -1,4 +1,4 @@
-using System;
+using System;
namespace GraphQL.Query.Builder
{
diff --git a/src/GraphQL.Query.Builder/QueryStringBuilder.cs b/src/GraphQL.Query.Builder/QueryStringBuilder.cs
index 8db7953..8a642bf 100644
--- a/src/GraphQL.Query.Builder/QueryStringBuilder.cs
+++ b/src/GraphQL.Query.Builder/QueryStringBuilder.cs
@@ -36,7 +36,7 @@ public void Clear()
///
/// The formatted query param.
/// Invalid Object Type in Param List
- internal protected string FormatQueryParam(object value)
+ internal protected virtual string FormatQueryParam(object value)
{
switch (value)
{
diff --git a/tests/GraphQL.Query.Builder.UnitTests/CustomQueryStringBuilderTests.cs b/tests/GraphQL.Query.Builder.UnitTests/CustomQueryStringBuilderTests.cs
new file mode 100644
index 0000000..4f95589
--- /dev/null
+++ b/tests/GraphQL.Query.Builder.UnitTests/CustomQueryStringBuilderTests.cs
@@ -0,0 +1,60 @@
+using System;
+using System.Text;
+using Xunit;
+
+namespace GraphQL.Query.Builder.UnitTests
+{
+ public class CustomQueryStringBuilderTests
+ {
+ [Fact]
+ public void TestOverride()
+ {
+ string query = new Query