c# – 当使用mvc自定义TextWriter时,OutputStream不可用

前端之家收集整理的这篇文章主要介绍了c# – 当使用mvc自定义TextWriter时,OutputStream不可用前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我试图在我的视图上得到一个图表,我在我的视图中显示如下:
<asp:Content ID="Content2" ContentPlaceHolderID="MainContent" runat="server">

<h2>ChartResult</h2>

<% using (Html.BeginForm("HandleChartType","Chart")) %>
<% { %>

    <%= Html.DropDownList("ListItems","Select Chart Type")%>

    <input type="submit" value="Set Chart" />
 <%} %>




<% myChart.Controls.Add(ViewData["Chart"] as Chart);  %>  
<asp:Panel ID="myChart" runat="server"></asp:Panel>



<!--<img src="/Chart/CreateChart" alt="" />-->


<h2>FormResults</h2>

</asp:Content>

此行<%myChart.Controls.Add(ViewData [“Chart”]为图表); %GT;生成错误消息使用自定义TextWriter时,OutputStream不可用 这是来自控制器的代码

public ActionResult ChartResult()
    {

        List<string> items = GetFilteredChartTypes();
        ViewData["ListItems"] = new SelectList(items);

        Chart myChart = CreateChart(SeriesChartType.Column);
        ViewData["Chart"] = myChart;

        return View();
    }

CreateChart函数只创建一个以Column作为图表类型的图表.
为什么我会收到此错误,使用自定义TextWriter时OutputStream不可用?

解决方法

我认为这个问题是错误的.
构建图表时,您有两种选择.

一种方法生成图表图像,然后您的视图将包含< img />将src属性设置为控制器/动作的url的标记,生成图表图像.

另一种方法是使用JSON操作构建控制器,该操作仅返回图表数据.这是更灵活的方式,因为您可以自由选择任何可视化图表的现成javascript库(html5 canvas或svg)

猜你在找的C#相关文章