Cela se produit probablement parce que vous initialisez vos observables comme ceci:
var a = ko.observable();
Si vous faites cela, la valeur non emballée de a
ne sera pas défini. KO.TOJSON appelle la fonction JSON.Stringify native, qui ne sérialisera pas les propriétés avec des valeurs non définies. Pour éviter cela, le moyen le plus simple est d'initialiser vos observables comme ceci:
var a = ko.observable(null);
En sérialisation, cela se traduira par "A": Null, que le JavascriptSerializer devrait pouvoir digérer.
Voici un violon avec des exemples, vérifiez la console: http://jsfiddle.net/v87ky/1/