Web Helper Chart does not appear in the server application

Asked

Viewed 98 times

1

Action that mounts the Chart:

public ActionResult GraficoPedidos()
{   
    int [] arrayP = new int[12];
    int aux = 0;

    for(int i = 1;i <= 12;i++)
    {
        int numero = Convert.ToInt32(context.Pedidos.Count(p => p.DataPedido.Month == i && p.DataPedido.Year == DateTime.Now.Year));
        arrayP[aux] = numero;
        aux++;
    }

    var grafico = new Chart(1000, 400, theme: ChartTheme.Yellow);

    grafico.AddTitle("Pedidos " + DateTime.Now.Year);
    grafico.AddLegend("Pedidos");

    grafico.AddSeries(
        name: "Número de Pedidos",
        chartType: "column",
        xValue: new[] { "Jan", "Fev", "Mar", "Abr", "Mai", "Jun","Jul","Ago","Set","Out","Nov","Dez" },
        yValues: new[] { arrayP[0], arrayP[1], arrayP[2], arrayP[3], arrayP[4], arrayP[5],arrayP[6],arrayP[7],arrayP[8],arrayP[9]
        ,arrayP[10],arrayP[11]});

    return File(grafico.GetBytes("png"), "images/png");    
}

Part of the VIEW where I display the Chart:

<fieldset>
    <legend>Números de Pedidos em @DateTime.Now.Year</legend>
    <div style="">
        <img src="@Url.Action("GraficoPedidos")" />
    </div>
</fieldset>

I show a Chart in my application...that when running local it appears normal:

inserir a descrição da imagem aqui

When I run the application on the server:

inserir a descrição da imagem aqui

Error shown in browser:

inserir a descrição da imagem aqui

Continuation of the error: inserir a descrição da imagem aqui

Does anyone have any idea what it might be ?

1 answer

1

Check this line in your Web Config:

<add key="ChartImageHandler" value="storage=file;timeout=20;dir=c:\TempImageFiles\;"/>

And change it to the following:

<add key="ChartImageHandler" value="storage=file;timeout=20;"/>

This solution worked in my application.

Browser other questions tagged

You are not signed in. Login or sign up in order to post.