向 Silverlight 图表添加数据时出错

本文关键字:数据 出错 添加 Silverlight | 更新日期: 2023-09-27 18:32:00

我试图向银光折线图添加值。为此,我创建了一个折线图,然后使用 wcf ria 服务添加该图表中的数据。

Everthing工作正常,但是当我尝试运行我的网站时,它会在图表中加载一些虚拟数据。在我的Windows azure sql表中没有这样的数据。它访问 azure sql 表并且工作正常,但在我的数据库中的值不同。

为了显示从 azure 应用程序访问数据库,我使用了实体模型 ado.net 并创建了一个水信息域,并使用此代码和其他折线图的类似内容。

我用了:

    private GetTemprature()
            {
                //shows and gives garden uses from sql table
                context = new WaterDomainContext();
                context.FarmTemps.Clear();
                var query = context.GetFarmTempsQuery();
                LoadTemp = context.Load<FarmTemp>(query);
                LoadTemp.Completed += new EventHandler(LoadTemp_Completed);
            }
            private void LoadTemp_Completed(object sender, EventArgs e)
            {
                //Draw values from a table for Performance
                List<Temprature> tmp = new List<Temprature>();
                if (LoadTemp.Entities != null || LoadTemp.Entities.Count() > 0)
                {
                    foreach (FarmTemp item in LoadTemp.Entities)
                    {
                        tmp.Add(new Temprature()
                        {
                            Temp = (float)(item.Temp),
                            Date = Convert.ToDateTime(item.ODate)
                        });
                    }
                }
                LineSeries tmpv = FarmCondtion.Series[0] as LineSeries;
                tmpv.ItemsSource = tmp;
            }

在这里添加了我得到的图表的快照:https://i.stack.imgur.com/RC2zV.png

现在您可以看到日期不是按常规顺序排列的[这些也不是我的数据库中的日期],并且只显示点而不是线条。但是我的数据库确实只有过去七天的常规日期值和其他值。

为什么会这样

请告诉我

谢谢

向 Silverlight 图表添加数据时出错

您提到相同的数据在一个图表中工作正常,但在另一个图表中则不然。两个图表之间有什么区别吗?我认为问题出在客户端,因为您已经验证了数据库和其中一个图表中的数据都很好。因此,现在请专注于客户端,检查如何配置图表的数据源。顺便说一句,据我从屏幕截图中可以看出,日期是有序的。它从 11/1/2011 开始,到 12/1/2011,然后是 1/1/2012,一直到 10/1/2012。图表有点小,因此标签显示在两条线上。请不要先读第一行,然后再读第二行。相反,从左到右一起阅读这两行。像这样:

1   3   5
  2    4   6

如果您的意思是日期不应该是将来的日期,请检查您是否有任何可能更改日期的代码。

此致敬意

徐明.

我的第一个赌注是问题出在Convert.ToDateTime方法上。我想是那个项目。ODate 是要转换为日期时间的字符串。

通过传递正确的区域性转换为日期时间会更安全。例如,10/1/2012 在 en-US 中与在 nl-BE 中不同。这就是为什么始终指定要从哪个区域性转换字符串很重要的原因(参考:http://msdn.microsoft.com/en-us/library/9xk1h71t.aspx)。

现在另一方面。为什么您希望以正确的顺序查看日期?我没有看到任何根据日期对项目进行排序的代码。你在后端这样做吗?