C# 如何使用<;列表>;使用modelView
我正在尝试使用ChartJS绘制Excel数据。 Visual Studio表示,C# 如何使用<;列表>;使用modelView,c#,asp.net-mvc,C#,Asp.net Mvc,我正在尝试使用ChartJS绘制Excel数据。 Visual Studio表示,列表不包含答案的定义。 不过,我找不到我的代码有任何错误。不过,我在过去的两天里才开始使用VS 有人能看看我的代码,也许会发现一个或两个错误吗?谢谢 视图模型: using System; using System.Collections.Generic; using System.Linq; using ReinovaGrafieken.Models; namespace ReinovaGrafieken.M
列表不包含答案的定义。
不过,我找不到我的代码有任何错误。不过,我在过去的两天里才开始使用VS
有人能看看我的代码,也许会发现一个或两个错误吗?谢谢
视图模型:
using System;
using System.Collections.Generic;
using System.Linq;
using ReinovaGrafieken.Models;
namespace ReinovaGrafieken.Models
{
public class GraphDataViewModel
{
public List<Graphs> GraphData { get; set; }
}
}
以及视图中的一段代码:
@model ReinovaGrafieken.Models.GraphDataViewModel
@{
ViewBag.Title = "Dashboard";
Layout = "~/Views/Shared/_Layout.cshtml";
}
@Scripts.Render("~/bundles/jquery")
@Scripts.Render("~/bundles/bootstrap")
<h2>Dashboard</h2>
<div id="chart_container">
<canvas id="bar_chart"></canvas>
<script>
var answers = @Html.Raw(Json.Encode(@Model.GraphData.Answers));
var labels = @Html.Raw(Json.Encode(@Model.GraphData.Names));
@model reinvagrafieken.Models.GraphDataViewModel
@{
ViewBag.Title=“仪表板”;
Layout=“~/Views/Shared/_Layout.cshtml”;
}
@Scripts.Render(“~/bundles/jquery”)
@Scripts.Render(“~/bundles/bootstrap”)
仪表板
var answers=@Html.Raw(Json.Encode(@Model.GraphData.answers));
var labels=@Html.Raw(Json.Encode(@Model.GraphData.Names));
这就是我的想法来源,它对那个人起作用的地方:
https://www.youtube.com/watch?v=E7Voso411Vs&t=2787s
GraphData
是图形的集合。因此,Answers
是Graph
上的可访问属性,而不是GraphData
GraphData
是Graph
的集合。因此,Answers
是Graph
上的可访问属性,而不是GraphData
像@Stephen Muecke写的那样,列表
不包含名为Answers
的属性。
您可以使用元素,您需要如下所示:
@Model.GraphData.First().Answers
(从列表中获取第一个元素)。
或者您可以使用.Foreach()
方法就像@Stephen Muecke写的那样,列表
不包含名为答案
的属性。
您可以使用元素,您需要如下所示:
@Model.GraphData.First().Answers
(从列表中获取第一个元素)。
或者您可以使用.Foreach()
方法图形数据
是列表
。列表
不包含名为Answers
的属性(它包含Count()
等属性)。它是Graphs
类,包含属性Answer
它不清楚插件需要什么。你想要一个包含Answer
属性所有值的集合吗?@StephenMuecke是的。我想从Excel工作表中创建5个左右的列表。这些列表必须在ChartJS视图中可用。(对于50张左右的图表)是的,但您需要什么样的重新排列
和年龄
?例如,Model.GraphData.Select(x=>x.Answers)
将为您提供一个数组,其中包含每个Answer
值。另一方面,如果您需要访问所有值,则只需Model.GraphData
即可生成[{Names someValue,AnswerHeaders someValue,…}{{Names someValue,AnswerHeaders someValue,…},{…}]
GraphData
是列表
。列表
不包含名为Answers
的属性(它包含Count()
等属性)。它是Graphs
类,包含属性Answer
它不清楚插件需要什么。是否要包含Answer
属性的所有值的集合?@StephenMuecke是的。我想从Excel工作表创建5个左右的列表。这些列表必须在ChartJS视图中可用。(对于50个左右的图表)是的,但是您需要repArray
和ages
做什么?例如Model.GraphData.Select(x=>x.Answers)
会给您一个包含每个Answer
值的数组。另一方面,如果您需要访问所有值,则只需Model.GraphData
即可生成[{Names someValue,AnswerHeaders someValue,…},{{{Names someValue,AnswerHeaders someValue,…},{…}]
但是我如何访问每个属性?('Answers','AnswerHeaders'等))List
的目的是什么?不确定您是否希望遍历集合并访问每个元素Answers
属性:foreach(var item in@Model.GraphData){var Answers=item.Answers;/*对“Answers”执行您想要执行的操作
*/}`我是从我添加到帖子的视频中获得的。我只需要以列表的形式访问所有内容。名称的列表、回答的列表等等。但是我如何访问每个属性呢?(“回答”、“回答标题”等))List
的目的是什么?不确定您是否希望遍历集合并访问每个元素Answers
属性:foreach(var item in@Model.GraphData){var Answers=item.Answers;/*对“Answers”执行您想要执行的操作
*/}`我从我添加到帖子的视频中得到它。我只需要以列表的形式访问所有内容。名称的列表
,答案的列表
等等