我正在尝试以 Json 的形式读取一些数据,对其进行反序列化,并将其显示在我的视图中的 DropDownList 中。数据如下所示:
{
"products": [
{
"body_html": "<p> ....</p>",
"created_at": "2012-09-19T11:55:44-04:00",
...
"tags": "Emotive, Flash Memory, MP3, Music",
"variants": [
{
"compare_at_price": null,
"created_at": "2012-09-19T11:55:44-04:00",
...
"inventory_quantity": 10
}
],
"images": [
{
"created_at": "2012-09-19T11:55:44-04:00",
"id": 850703190,
...
}
]
}
]
}
我尝试了一些不同的方法,但都没有奏效。现在我的控制器中有:
var data = Newtonsoft.Json.Linq.JObject.Parse(productsJson.ToString())["products"];
SelectList productsData = JsonConvert.DeserializeObject<SelectList>(data.ToString());
ViewData["products"] = productsData;
在视图中:
@Html.DropDownList("ProductList", (SelectList)ViewData["products"])
目前我收到以下错误:
无法创建和填充列表类型 System.Web.Mvc.SelectList。
说明:执行当前 Web 请求期间发生未处理的异常。请查看堆栈跟踪以获取有关错误及其源自代码的位置的更多信息。
异常详细信息:System.InvalidOperationException:无法创建和填充列表类型 System.Web.Mvc.SelectList。
帮助表示赞赏。