如何将ViewModel数据传递到JavaScript文件?

时间:2019-03-03 14:33:10

标签: asp.net-core aspnetboilerplate

我在控制器中有一个Dictionary<string, List<string>>,并且在 / wwwroot / view-resources 中有一个js文件,因此如何将字典传递给js文件

我尝试了var result = '@Model.Dic',并且得到了一个字符串型变量@ Model.Dic,

我也尝试使用value="@{@Model.EditList}"的隐藏输入,但得到了结果

System.Collections.Generic.Dictionary`2[System.String,System.Collections.Generic.List`1[System.String]]

我在.netcore中使用abp

1 个答案:

答案 0 :(得分:1)

  1. 在C#中将字典序列化为JSON字符串。
  2. 解析JavaScript中的JSON字符串。
// View.cshtml

using Newtonsoft.Json;

<script>
var jsonString = '@JsonConvert.SerializeObject(Model.Dic)';
var dictionary = JSON.parse(jsonString);

console.log(dictionary);
</script>