Хорошо, я нашел, как преодолеть эту проблему.Не очень элегантно, но работает.1. Я предполагал, что SortAsc будет строковым свойством в моей логике.Поэтому я оставил ссылку на URL как в тексте вопроса.Только инициализировал его строкой, вместо bool ("true"
intead из true
).2. Я создал доступную для записи зависимость observable, которая будет выполнять преобразование:
viewModel.SortAscBool = ko.dependentObservable({
read: function () {
return this.SortAsc() === "true";
},
write: function (value) {
this.SortAsc(String(value));
},
owner: viewModel
});
, и привязал свой флажок к этой пропе.Так что теперь, когда флажок установлен, SortAscBool изменен, и он устанавливает буквальное значение SortAsc (я думаю, что это преобразование действительно не нужно, но как программист C # мне это нравится :)).И, конечно же, при изменении SortAsc SortAscBool также изменится и вернет преобразованное значение в проверенную привязку.И это то, что действительно было необходимо.
Кроме того, сначала я просто создал одностороннюю зависимую наблюдаемую, но тогда URL не будет обновляться со значениями из флажка.