tipos tiempo real pastel para libreria hacer graficos graficas graficar grafica ejemplos coordenadas chart c# charts

c# - tiempo - Databind con controles de gráfico proporciona NotImplementedException



libreria para hacer graficas en c# (3)

Alimento un control Chart de Microsoft con un IEnumerable de mi propia clase ChartPoint

public class ChartPoint { public double Xvalue { get; set; } public double Yvalue { get; set; } public string Url { get; set; } public string Tooltip { get; set; } }

entonces intento DataBind el IEnumerable <ChartPoint>:

serie.Points.DataBind(points, "Xvalue", "Yvalue", "Tooltip=Tooltip,Url=Url");

pero luego golpeo una NotImplementedException en esa fila:

System.Linq.Iterator`1.System.Collections.IEnumerator.Reset() +29 System.Web.UI.DataVisualization.Charting.DataPointCollection.DataBind(IEnumerable dataSource, String xField, String yFields, String otherFields) +313

¿Qué estoy haciendo mal?


¿Estás usando bloques iteradores (es decir, yield return )? El compilador no generará un método de Reset si lo haces genera un método Reset pero el método arroja una NotImplementedException .


¿Estás usando un iterador C #?

Los iteradores C # no implementan la función Restablecer en el IEnumerator generado y arrojarán una NotImplementedException si se llama. Parece que el control particular requiere que ese método esté presente.

Es probable que tenga que usar una colección que admita Reset en su iterador. La forma más fácil de lograr esto es usar una List<T> para ajustar su IEnumerable<T> existente IEnumerable<T>

Por ejemplo

List<ChartPoint> list = new List<ChartPoint>(points); serie.Points.DataBind(list, "Xvalue", "Yvalue", "Tooltip=Tooltip,Url=Url");


Ver mi informe de error en Connect aquí . Vota por esto y tal vez MS lo arreglará en la próxima versión del Gráfico.