AspMVC3アプリケーションを使用しています。
私は列挙型を持っています:
public enum EmployeesOptions
{
John = 1,
Peter = 2,
Andrew = 3
}
そしてMyViewModel
クラス
public class MyViewModel
{
public MyViewModel()
{
Employees = new List<EmployeesOptions>()
{
EmployeesOptions.John,
EmployeesOptions.Peter,
EmployeesOptions.Andrew
};
}
public IEnumerable<EmployeesOptions> Employees { get; set; }
}
私のコントローラー:
public ActionResult Index()
{
var vm = new MyViewModel();
return View(vm);
}
マイインデックスビュー:
@model MyViewModel
<script type="text/javascript">
var jsonString = '@Html.Raw(Newtonsoft.Json.JsonConvert.SerializeObject(this.Model))';
var data = ko.mapping.fromJSON(jsonString);
omega.franchiseInfo = ko.mapping.fromJS(data);
</script>
サーバーからのシリアル化されたデータは次のようになります。
Emplyees:[1,2,3]
私はこのようになりたい:
Emplyees:["John","Peter","Andrew"]
私は何が欠けていますか?
アップデート:
var jsonString = '@Html.Raw(Newtonsoft.Json.JsonConvert.SerializeObject(this.Model, Newtonsoft.Json.Formatting.None, new Newtonsoft.Json.Converters.StringEnumConverter()))';
これは仕事をします!