#c# #json #asp.net-mvc #kendo-asp.net-mvc
#c# #json #asp.net-mvc #kendo-asp.net-mvc
Вопрос:
Я пытаюсь привязать данные JSON к диаграммам пользовательского интерфейса Kendo в ASP.Net MVC. Я просмотрел много документации, но не смог найти правильное решение для меня. Я надеюсь, что кто-нибудь здесь сможет мне помочь!
Это данные JSON:
[
{
"SubjectId": 60369,
"SubjectName": "Mathematics",
"Score": 50.00,
"RemainingScore": 50.00,
"SubjectColor": "#ffa620",
"SortOrder": 1
},
{
"SubjectId": 61529,
"SubjectName": "Biology",
"Score": 30.00,
"RemainingScore": 70.00,
"SubjectColor": "#e082fb",
"SortOrder": 1
},
{
"SubjectId": 60812,
"SubjectName": "Chemistry",
"Score": 50.00,
"RemainingScore": 50.00,
"SubjectColor": "#ac97fb",
"SortOrder": 2
}
]
Вот МОДЕЛЬ:
public class ScoreModel
{
public int SubjectId { get; set; }
public string SubjectName { get; set; }
public double Score { get; set; }
public double RemainingScore { get; set; }
public string SubjectColor { get; set; }
public int SortOrder { get; set; }
}
Вот ВИД:
@model IEnumerable<BarChart.Models.ScoreModel>
@(Html.Kendo().Chart(Model)
.Name("chart")
.Title("SUBJECT SCORE")
.Theme("Flat")
.Legend(legend => legend.Visible(false))
.DataSource(ds => ds.Read(read => read.Action("LoadJson", "Home")))
.Series(series =>
{
series.Bar(model => model.Score, model=> model.SubjectColor)
.CategoryField("SubjectName")
.Labels(labels => labels.Visible(true)
.Format("{0}%")
.Position(ChartBarLabelsPosition.OutsideEnd));
})
.CategoryAxis(axis => axis
.MajorGridLines(lines => lines.Visible(false))
)
.ValueAxis(axis => axis.Numeric()
.Labels(labels => labels.Visible(false))
.Line(lines => lines.Visible(true))
.MajorGridLines(lines => lines.Visible(false))
)
.Tooltip(tooltip => tooltip
.Visible(true).Template("#= series.name #: #= value #")
)
)
И вот КОНТРОЛЛЕР:
public ActionResult Index()
{
return View();
}
public void LoadJson()
{
using (StreamReader streamReader = new StreamReader(@"D:ProjectsBarChartScoreData.json"))
{
string json = streamReader.ReadToEnd();
List<ScoreModel> items = JsonConvert.DeserializeObject<List<ScoreModel>>(json);
}
}
Я также не знаю, как вернуть данные json для просмотра. Пожалуйста, помогите мне с этим тоже. Я новичок в .NET, и мне еще многому предстоит научиться.