Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/104.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用敲除js读取WebApi结果中的JsonData_Json_Asp.net Mvc 4_Knockout.js_Asp.net Web Api - Fatal编程技术网

如何使用敲除js读取WebApi结果中的JsonData

如何使用敲除js读取WebApi结果中的JsonData,json,asp.net-mvc-4,knockout.js,asp.net-web-api,Json,Asp.net Mvc 4,Knockout.js,Asp.net Web Api,我已经返回了Result.items使用WebApi在这些项中有一项是JsonData如何使用MVC应用程序的Knockout.js读取JsonData 从一个观点来看,我已经尝试了以下几点 <ul id="modelView" class="modelList" data-bind="foreach: modelItemList"> <li class="modelListItem" style="border: solid" data-bind="css:

我已经返回了Result.items使用WebApi在这些项中有一项是JsonData如何使用MVC应用程序的Knockout.js读取JsonData

从一个观点来看,我已经尝试了以下几点

 <ul id="modelView" class="modelList" data-bind="foreach: modelItemList">
        <li class="modelListItem" style="border: solid" data-bind="css: { selected: $data == $root.selectedItem() }">
            <span data-bind="text: $data.ComponentName"></span>
            <ul>
                  <li class="modelList" data-bind="foreach: data.JsonData">
                    <span data-bind="text: data.ColumnName"></span>
                </li>
            </ul>

        </li>
我的jsonData是DashBoardComponentColumn的对象列表

public class DashBoardComponentColumn
{
    public int ColumnId { get; set; }
    public string ColumnName { get; set; }
    public string ColumnType { get; set; }
}
然后,我的问题是如何读取jsondata,我尝试如上所述,但结果只有一个组件。
如何使用knockout js读取数据看起来JsonData是一个字符串,而不是一个列表。因此,.NET json序列化程序不会将其转换为json列表。如果json数据确实是一个列表,您应该将其实例化为一个列表。

在本例中,我所做的就是将整个json数据反序列化为列列表,并准备一个视图模型,如下所示
公共类DashBoardViewModel{public int ComponentId{get;set;}public string ComponentName{get;set;}public string ComponentType{get;set;}public List columnlist{get;set;}}
并返回视图。。
public class DashBoardComponentColumn
{
    public int ColumnId { get; set; }
    public string ColumnName { get; set; }
    public string ColumnType { get; set; }
}