Skip to content

Commit c69a285

Browse files
Merge pull request #59 from borigas/JsonEscapeStrings
Json escape strings
2 parents e29a793 + 71e922e commit c69a285

File tree

2 files changed

+7
-1
lines changed

2 files changed

+7
-1
lines changed

src/CouchDB.Driver/Translators/ConstantExpressionTranslator.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ private void HandleConstant(object constant)
3636
_sb.Append(((bool)constant) ? "true" : "false");
3737
break;
3838
case TypeCode.String:
39-
_sb.Append($"\"{constant}\"");
39+
_sb.Append(JsonConvert.SerializeObject(constant));
4040
break;
4141
case TypeCode.DateTime:
4242
_sb.Append(JsonConvert.SerializeObject(constant));

tests/CouchDB.Driver.UnitTests/Find/Find_Selector.cs

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -110,5 +110,11 @@ public void Variable_Bool_ExplicitNotFalse()
110110
var json = _rebels.Where(r => r.IsJedi != false).OrderBy(r => r.IsJedi).ToString();
111111
Assert.Equal(@"{""selector"":{""isJedi"":{""$ne"":false}},""sort"":[""isJedi""]}", json);
112112
}
113+
[Fact]
114+
public void Variable_String_IsJsonEscaped()
115+
{
116+
var json = _rebels.Where(r => r.Name == @"Chewbacca (""Chewie"")").ToString();
117+
Assert.Equal(@"{""selector"":{""name"":""Chewbacca (\""Chewie\"")""}}", json);
118+
}
113119
}
114120
}

0 commit comments

Comments
 (0)