Chartjs-Converting int to List<double?>, ChartJS Core

0👍

Based on what you mention, it seems that the data passed to GenerateLineChart will only be used for UI purposes. That is, this method can get an appropriate copy of the original data. If this is the case, then, the solution you attempted with

(List<double?>)result.Select(x => x.Appropriate)

was very close, but the cast needs to be done inside Select, i.e.

result.Select(x => (double?)x.Appropriate)

Here is a sketch of your code with that change

public IActionResult Details()
{
    var result = _db.Session.ToList();
    var AppropriateLine = result.Select(x => (double?)x.Appropriate).ToList(); 
    var lineChart = GenerateLineChart(AppropriateLine);
    // Rest or your code
}

private static Chart GenerateLineChart(IEnumerable<double?> data)
{
    // Your code as is here ....

    LineDataset AppropriateDataset = new LineDataset()
    {
        Data = data,
        // Rest of your code
    }
    // ....
}

0👍

maybe you can check at the moment that you need the list if the number is double or int bool isInt = d == (int)d; and parse to use it only for that time on an aux.

Leave a comment