C# 无法创建转换为JSON的文件
我想做一些图表,基于我使用CodeFirst的类结果 我有课堂成绩 控制器的设计与实现C# 无法创建转换为JSON的文件,c#,json,asp.net-mvc,serialization,asp.net-core-mvc,C#,Json,Asp.net Mvc,Serialization,Asp.net Core Mvc,我想做一些图表,基于我使用CodeFirst的类结果 我有课堂成绩 控制器的设计与实现 [HttpGet] public async Task<IActionResult> Results(string id) { if (string.IsNullOrEmpty(id)) { return NotFound(); } Pat
[HttpGet]
public async Task<IActionResult> Results(string id)
{
if (string.IsNullOrEmpty(id))
{
return NotFound();
}
Patient patient = await _userManager.FindByIdAsync(id) as Patient;
if (patient == null)
{
return NotFound();
}
List<IGrouping<string, Result>> results = _context.Results.Where(x => x.PatientId == id).GroupBy(z => z.GameName).ToList();
ViewBag.Test = JsonConvert.SerializeObject(results);
return View(results);
}
请帮助我解决模型更改中的此错误,如:
public class ResultChartModel
{
public string Surname { get; set; }
public List<Result> Results { get; set; }
}
到
JS:
希望能对你有所帮助。他不懂这个新的JavaScriptSerializerHow我来解决它?@TravisBincle。很抱歉我犯了一个严重的错误。它是ASP.NETMVC而不是ASP.NETCore。所以我更新了我的答案。并使用Newtonsoft.Json。谢谢,错误消失了,但我的页面是空的。为什么会这样?我更新了我的查看页面,可能有问题吗?哦,那我失败了,我加了括号,非常感谢!
using PersonalArea.DAL.Models;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
namespace PersonalArea.WebUI.ViewModels
{
public class ResultChartModel
{
public string Surname { get; set; }
public IQueryable<IGrouping<string, Result>> Results { get; set; }
}
}
window.onload = function ()
{
var test = @Html.Raw(JsonConvert.DeserializeObject(ViewBag.test));
var datapoints = [];
for (var i = 0; i < test.length; i++)
{
var str_array = test[i].Score;
for (var j = 0; j < str_array.length; j++)
{
datapoints.push({ y: str_array[j], x: str_array[j], label: test[i].GameName });
}
}
ViewBag.Test = JsonConvert.SerializeObject(results);
public class ResultChartModel
{
public string Surname { get; set; }
public List<Result> Results { get; set; }
}
List<IGrouping<string, Result>> results = _context.Results.Where(x => x.PatientId == id).GroupBy(z => z.GameName).ToList();
ViewBag.Test = JsonConvert.SerializeObject(results);
List<Result> results = _context.Results.Where(x => x.PatientId == id).OrderBy(z => z.GameName).ThenBy(z => z.DateExit).ToList();
ViewBag.Test = JsonConvert.SerializeObject(results);
var test = @Html.Raw(ViewBag.test);
var test = @Html.Raw(JsonConvert.DeserializeObject(ViewBag.Test));
for (var i = 0; i < test.length; i++) {
datapoints.push({ y: test[i].Score x: test[i].DateExit, label: test[i].GameName });
}