Как отправить байтовый массив как параметр в HTML.Action?

Я сегодня работал с графиками, и я думаю, что я наконец нашел способ, чтобы все это работало, но я столкнулся с проблемой, которую я не знаю, как пройти.

Создайте мои графики в моем контроллере:

    foreach (var m in model[0].HistoryValues)
    {

        var chart = new Chart(width: 300, height: 200)
        .AddSeries(
        chartType: "bar",
        xValue: new[] { "Server", "Db", "Tickets" },
        yValues: new[] { m.ServerPerformance, m.Databaseperformance, m.SoldTicketsLastUpdate })
        .GetBytes("png");

        m.Bytes = chart;

        //m.ChartFile = File(chart, "image/bytes");
    };

Теперь я хочу отобразить их как изображения в представлении:

   @foreach (var m in Model[0].HistoryValues)
    {
        <img src="@Html.Action("getImage", "OverWatch", new { byte[] Mybytes= m.Bytes })" alt="Person Image" />
    }

но я получаю:

Неверный анонимный член объявления типа. Члены анонимного типа должны быть объявлены с назначением члена, простым именем или доступом члена.

метод getImage:

public FileContentResult getImage(byte[] bytes)
{
   return new FileContentResult(bytes, "image/jpeg");
}

Как мне это решить?

1 ответ

Решение

В анонимном типе вы не определяете тип переменной byte[]. Это работает сам на основе типа m.Bytes

@foreach (var m in Model[0].HistoryValues)
{
    <img src="@Html.Action("getImage", "OverWatch", new { Mybytes= m.Bytes })" alt="Person Image" />
}
Другие вопросы по тегам