希望有人能帮我:我的挑战是,我有一个返回JSON的Web服务。
格式是
{"stations":[{"name":"aname","free":false},{"name":"anothername","free":true}]}
所以我有一个对象,它是一个数组,包含具有n
属性的n
对象。现在,对于stations对象数组中的每个对象,我想呈现属性,如
<p>stations[0].name</p>
我需要在mvc中使用它。所以我创建了一个模型
public station(){}
public string name {get; set;}
public boolean free {get; set;}
在我的contorller中,我使用了一个WebClient,现在我需要处理响应。我在想埃克塞特,但我不知道如何把这个观点?!
我的目标是了解我如何能做到这样的事情,
public Actionresult Stations(){
var stations = JObject.Load(reponse);
return View(Stations);
}
但是我不知道如何处理数组的每个对象,并在Stations.cshtml
视图中使用for each或类似的方法来获取它们的值。
有什么想法吗?
4条答案
按热度按时间332nm8kg1#
有很多方法可以做到这一点,这就是我的方法。
型号
创建一个类,在这个类中,你的JSON将被转换为:
RootJson
类有一个属性,它将包含station
的示例列表(您的类):控制器
然后,使用以下命令将JSON格式化:
并将站点传递到视图:
查看
在视图中,您必须指定传递的数据的类型,在本例中为
IEnumerable<station>
。因此,在Stations.cshtml
的顶部添加:您可以使用
foreach
来覆盖模型:编辑:完整代码用于澄清
型号
控制器
在 YourController.cs 中
查看
pw9qyyiw2#
最简单的方法之一是像这样使用ViewBag:
而在cshtml中,
dy1byipe3#
型号
控制器
查看
在
Stations.cshtml
的顶部添加:您可以使用
foreach
来覆盖模型:hsvhsicv4#
1.在控制器中将模型数据转换为Json格式
1.在视图中获取TextBox中的JSON数据