ラジオ ボタンの最初の一致が文字列のみに一致し、値を文字列に設定したいことがわかったら、最初の値を文字列に変換するだけです。これを Int 値で戦わなければなりませんでした。
オブザーバブルをセットアップした後、値を文字列に変換すると、KO はそこから魔法を実行します。個々の行でマッピングする場合は、それらの行で変換を行います。
サンプル コードでは、Json を使用してモデル全体を 1 つのコマンドでマップしています。次に、Razor が変換のために引用符の間に値を挿入できるようにします。
script type="text/javascript">
KoSetup.ViewModel = ko.mapping.fromJS(@Html.Raw(Json.Encode(Model)));
KoSetup.ViewModel.ManifestEntered("@Model.ManifestEntered"); //Bool
KoSetup.ViewModel.OrderStatusID("@Model.OrderStatusID"); //Int
</script>
開発中に、Web ページの下部にある「すべてを画面にダンプ」を使用します。
<h4>Debug</h4>
<pre data-bind="text: ko.toJSON($data, null, 2)"></pre>
データ値は次のとおりです。
"OrderStatusID": 6,
"ManifestEntered": true,
そして、その後
"OrderStatusID": "6",
"ManifestEntered": "True",
私のプロジェクトでは、Bools を変換する必要はありませんでした。なぜなら、同じフラストレーションを持たないチェックボックスを使用できるからです。