diff --git a/Microsoft.Azure.Cosmos/src/Linq/DefaultCosmosLinqSerializer.cs b/Microsoft.Azure.Cosmos/src/Linq/DefaultCosmosLinqSerializer.cs index 31f20d5059..e616d8b349 100644 --- a/Microsoft.Azure.Cosmos/src/Linq/DefaultCosmosLinqSerializer.cs +++ b/Microsoft.Azure.Cosmos/src/Linq/DefaultCosmosLinqSerializer.cs @@ -11,6 +11,7 @@ namespace Microsoft.Azure.Cosmos.Linq using System.Runtime.Serialization; using Microsoft.Azure.Documents; using Newtonsoft.Json; + using Newtonsoft.Json.Serialization; internal class DefaultCosmosLinqSerializer : ICosmosLinqSerializerInternal { @@ -67,7 +68,14 @@ public string Serialize(object value, MemberExpression memberExpression, Type me public string SerializeScalarExpression(ConstantExpression inputExpression) { - return JsonConvert.SerializeObject(inputExpression.Value); + JsonSerializerSettings settings = this.PropertyNamingPolicy == CosmosPropertyNamingPolicy.CamelCase + ? new JsonSerializerSettings + { + ContractResolver = new CamelCasePropertyNamesContractResolver() + } + : new JsonSerializerSettings(); + + return JsonConvert.SerializeObject(inputExpression.Value, settings); } public string SerializeMemberName(MemberInfo memberInfo) diff --git a/Microsoft.Azure.Cosmos/tests/Microsoft.Azure.Cosmos.EmulatorTests/BaselineTest/TestBaseline/LinqTranslationWithCustomSerializerBaseline.TestMemberInitializerDataMember.xml b/Microsoft.Azure.Cosmos/tests/Microsoft.Azure.Cosmos.EmulatorTests/BaselineTest/TestBaseline/LinqTranslationWithCustomSerializerBaseline.TestMemberInitializerDataMember.xml index 215d593da2..4fd075260e 100644 --- a/Microsoft.Azure.Cosmos/tests/Microsoft.Azure.Cosmos.EmulatorTests/BaselineTest/TestBaseline/LinqTranslationWithCustomSerializerBaseline.TestMemberInitializerDataMember.xml +++ b/Microsoft.Azure.Cosmos/tests/Microsoft.Azure.Cosmos.EmulatorTests/BaselineTest/TestBaseline/LinqTranslationWithCustomSerializerBaseline.TestMemberInitializerDataMember.xml @@ -29,7 +29,7 @@ WHERE (root["numericFieldDataMember"] = 1)]]> +WHERE (root = {"numericFieldDataMember": 1, "stringFieldDataMember": "1", "id": null, "pk": null, "dateTimeFieldDataMember": null, "dataTypeFieldDataMember": null})]]> 1) ? {"NumericFieldDataMember": 1, "StringFieldDataMember": "1", "id": null, "Pk": null, "DateTimeFieldDataMember": null, "DataTypeFieldDataMember": null} : {"NumericFieldDataMember": 1, "StringFieldDataMember": "1", "id": null, "Pk": null, "DateTimeFieldDataMember": null, "DataTypeFieldDataMember": null}) +SELECT VALUE ((root["numericFieldDataMember"] > 1) ? {"numericFieldDataMember": 1, "stringFieldDataMember": "1", "id": null, "pk": null, "dateTimeFieldDataMember": null, "dataTypeFieldDataMember": null} : {"numericFieldDataMember": 1, "stringFieldDataMember": "1", "id": null, "pk": null, "dateTimeFieldDataMember": null, "dataTypeFieldDataMember": null}) FROM root]]> +WHERE (root = {"numericFieldDataMember": 1, "stringFieldDataMember": "1"})]]> 1) ? {"NumericFieldDataMember": 1, "StringFieldDataMember": "1"} : {"NumericFieldDataMember": 1, "StringFieldDataMember": "1"}) +SELECT VALUE ((root["numericFieldDataMember"] > 1) ? {"numericFieldDataMember": 1, "stringFieldDataMember": "1"} : {"numericFieldDataMember": 1, "stringFieldDataMember": "1"}) FROM root]]> +WHERE (root = {"numberValueNewtonsoft": 1, "stringValueNewtonsoft": "1", "id": null, "pk": null, "dateTimeField": null, "dataTypeField": null})]]> 1) ? {"NumberValueNewtonsoft": 1, "StringValueNewtonsoft": "1", "id": null, "Pk": null, "DateTimeField": null, "DataTypeField": null} : {"NumberValueNewtonsoft": 1, "StringValueNewtonsoft": "1", "id": null, "Pk": null, "DateTimeField": null, "DataTypeField": null}) +SELECT VALUE ((root["numberValueNewtonsoft"] > 1) ? {"numberValueNewtonsoft": 1, "stringValueNewtonsoft": "1", "id": null, "pk": null, "dateTimeField": null, "dataTypeField": null} : {"numberValueNewtonsoft": 1, "stringValueNewtonsoft": "1", "id": null, "pk": null, "dateTimeField": null, "dataTypeField": null}) FROM root]]> +WHERE (root = {"numberValueNewtonsoft": 1, "stringValueNewtonsoft": "1"})]]> 1) ? {"NumberValueNewtonsoft": 1, "StringValueNewtonsoft": "1"} : {"NumberValueNewtonsoft": 1, "StringValueNewtonsoft": "1"}) +SELECT VALUE ((root["numberValueNewtonsoft"] > 1) ? {"numberValueNewtonsoft": 1, "stringValueNewtonsoft": "1"} : {"numberValueNewtonsoft": 1, "stringValueNewtonsoft": "1"}) FROM root]]> +WHERE (root = {"numberValueNewtonsoft": 1, "stringValueNewtonsoft": "1", "id": null, "pk": null})]]> 1) ? {"NumberValueNewtonsoft": 1, "StringValueNewtonsoft": "1", "id": null, "Pk": null} : {"NumberValueNewtonsoft": 1, "StringValueNewtonsoft": "1", "id": null, "Pk": null}) +SELECT VALUE ((root["numberValueNewtonsoft"] > 1) ? {"numberValueNewtonsoft": 1, "stringValueNewtonsoft": "1", "id": null, "pk": null} : {"numberValueNewtonsoft": 1, "stringValueNewtonsoft": "1", "id": null, "pk": null}) FROM root]]>