我创建了一个用于从Jira API接受JSON数据的模型。我使用Newtonsoft.Json反序列化JSON数据并将其保存在名为jiraObj的对象中。如果在return View(jiraObj)
行上设置一个断点,则可以看到我的对象已成功填充信息。
我不确定如何在我的视图中显示信息。我曾尝试调用控制器类和属性名称,但似乎只能到达模型中的上层类。
在这里,我使用Jira API收集信息。 我称呼我的班级Jira为创建对象,以保存模型中的预期信息。
request.AddHeader("Authorization", "Basic " + Base64Encode(accessToken));
request.AddHeader("Content-Type", "application/json");
IRestResponse response = client.Execute(request);
var content = response.Content; // raw content as string
Jira jiraObj = JsonConvert.DeserializeObject<Jira>(content);
ViewBag.Title = "Home Page";
return View(jiraObj);
这是我的模型文件中前几个类的摘要。
public class Jira
{
public ICollection<Body> Issues { get; set; }
}
public class Body
{
public int Id { get; set; }
public string Key { get; set; }
public Fields Fields { get; set; }
}
public class Fields
{
public Status Status { get; set; }
public Description Description { get; set; }
public string Summary { get; set; }
public Assignee Assignee { get; set; }
public Creator Creator { get; set; }
public Reporter Reporter { get; set; }
}
我的模型非常嵌套,似乎只能访问public ICollection<Body> Issues { get; set; }
我只用一个类就可以轻松访问属性。经过几个小时的努力,我似乎无法弄清楚。
编辑:查看代码,尝试了以下的许多不同迭代
@model IEnumerable<TestJira.Models.Jira>
@foreach (var item in Model)
{
<div>
@item.Summary
</div>
}
编辑2:以下代码有效。
@model TestJira.Models.Jira
@Model.Issues.ToList()
@foreach (var Issue in Model.Issues)
{
<div>@Issue.Fields.Summary</div>
}
答案 0 :(得分:1)
我将在视图中更改模型声明,以使其不是可枚举的,并使用for循环。
@model TestJira.Models.Jira
@for (var i = 0; i < Model.Issues.Count; i++)
{
<div>
Model.Issues[i].Summary
</div>
}