Reputation: 12925
I have the following in my MVC view:
$(document).ready(ko.applyBindings(new ProfileVm(@Html.Raw(Json.Encode(Model)))));
This is working great, except all of the keys from Model
are being encoded with uppercase first letters. How can I invoke the camelCase resolver from the view? Or is there a way to tell Json.Encode to use lowercase resolution?
Upvotes: 3
Views: 2517
Reputation: 6839
You should use Newsoft JSON for this:
@{ var json = JsonConvert.SerializeObject(
Model,
Formatting.None,
new JsonSerializerSettings { ContractResolver = new CamelCasePropertyNamesContractResolver() }
);
$(document).ready(ko.applyBindings(new ProfileVm(@Html.Raw(Json.Encode(json)))));
}
Upvotes: 11