asp.net-mvc-3 – ASP.NET MVC 3 MSChart错误:此数据系列只能设置1个Y值
发布时间:2020-05-23 23:17:32 所属栏目:asp.Net 来源:互联网
导读:我正在尝试使用 Microsoft’s charting library建立一个股票图表. 我正在使用此代码在我的视图中创建图表: @{ System.Web.Helpers.Chart cht = new Chart(600, 400); cht.AddTitle(ViewData[Symbol].ToString()); cht.AddSeries(name:
|
我正在尝试使用 Microsoft’s charting library建立一个股票图表. 我正在使用此代码在我的视图中创建图表: @{
System.Web.Helpers.Chart cht = new Chart(600,400);
cht.AddTitle(ViewData["Symbol"].ToString());
cht.AddSeries(name: "Price",chartType: "Stock",chartArea: "Top",xField: "Date",xValue: Model,yFields: "Open,High,Low,Close",yValues: Model);
cht.Write();
}
当调用获取图表的操作时,抛出以下异常: ArgumentOutOfRangeException: Data points insertion error. Only 1 Y values can be set for this data series.
Parameter name: yFields
System.Web.UI.DataVisualization.Charting.DataPointCollection.DataBindXY(IEnumerable xValue,String xField,IEnumerable yValue,String yFields) +1076598
System.Web.Helpers.Chart.ApplySeries(Chart chart) +508
System.Web.Helpers.Chart.ExecuteChartAction(Action`1 action) +174
System.Web.Helpers.Chart.GetBytes(String format) +144
System.Web.Helpers.Chart.Write(String format) +96
“Stock”chartType应该允许Y的4个值,并且当使用反射器检查Chart帮助程序的代码时,这似乎得到确认.我错过了什么吗? 解决方法通过自己构建图表,绕过帮助程序,我能够解决这个问题.using (Chart chart = new Chart())
{
chart.Width = 600;
chart.Height = 400;
chart.RenderType = RenderType.BinaryStreaming;
chart.Palette = ChartColorPalette.Bright;
chart.ChartAreas.Add("Top");
chart.ChartAreas.Add("Bottom");
chart.Series.Add("Price");
chart.Series.Add("Volume");
chart.Series["Price"].ChartArea = "Top";
chart.Series["Volume"].ChartArea = "Bottom";
chart.Series["Price"].ChartType = SeriesChartType.Stock;
chart.Series["Volume"].ChartType = SeriesChartType.Column;
for (int x = 0; x < data.Quotes.Count / 2; x++)
{
Quote quote = data.Quotes[x];
chart.Series["Price"].Points.AddXY(quote.Date,quote.Open,quote.High,quote.Low,quote.Close);
chart.Series["Volume"].Points.AddXY(quote.Date,quote.Volume);
}
using (MemoryStream memStream = new MemoryStream())
{
chart.SaveImage(memStream,ChartImageFormat.Jpeg);
return File(memStream.ToArray(),"image/jpeg");
}
}
此代码在我的控制器中,并且不存在任何视图,因为它返回实际的图像资源. (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- asp.net-mvc – 适当地url编码空间字符
- asp.net-mvc-4 – 调用客户端时应该发出服务器端方法异步?
- asp.net-mvc – 将隐藏文本字段附加到表单MVC
- ASP.net会话状态服务信息
- asp.net – 无法加载文件或程序集“Microsoft.TeamFoundati
- 用于诊断.NET中的内存泄漏的工具(ASP.NET应用程序)
- asp.net-mvc – 如何在扩展方法中使用HTML帮助器方法?
- ASP.NET身份验证在自定义机票上滑动到期时间
- asp.net – IIS配置错误 – 此配置部分不能用于此路径
- asp.net-web-api – 无法使MVC4 WebApi包含JSON中的空字段
推荐文章
站长推荐
热点阅读
