2

我正在VS2012开发一个Lighswitch应用程序与外部SQL Server 2008.我正在使用WCF RIA服务来获取我的数据,使用这些技巧:http://www.c-sharpcorner.com/UploadFile/raj1979/how-to-use-wcf-ria-service-in-lightswitch-2012/Lightswitch很慢,ADO.NET实体框架/域服务/ WCF RIA服务

我的主表包含一些静态数据列和大约5列外键。静态数据列立即加载,但所有外部属性需要3-5秒才能加载到具有〜100行的屏幕上。这是不能接受的..

enter image description here

,我的问题是,我不知道哪里可能的瓶颈。任何想法,我可以开始寻找?到目前为止,我唯一能想到的就是我的ADO.NET模型使用了Lazy Loading,它确实如此。

所有的外键属性只有两列有PK和一些文本,所以它们不是数据较重的。

任何帮助表示感谢,谢谢!

回答

2

我不知道这是确切的答案,你的速度问题,但你引述的文章建议您添加一个新的ADO.NET数据模型含有RIA服务类库。

绝对没有理由产生第二数据模型,为LightSwitch的已经生成一个当您将外部数据源(SQL Server数据库)。你可以重新使用它。 EF数据模型需要花费时间来构建,因此我想使用两个EF数据模型可以解释您遇到的慢度问题,但也可能完全是其他问题。

看看这篇文章(原RIA服务/ LightSwitch文章,&仍然是最好的),在其他几种技术中,Eric将向您展示如何重用LightSwitch为您的数据源创建的数据模型。

How Do I: Display a Chart Built On Aggregated Data

在这篇文章中,创建RIA服务专门数据在图表中显示,但你可以做任何你需要做的事。它不需要汇总数据。我广泛使用带有附加数据源(SQL数据库)的RIA服务,为列表,报告以及组合框的查找数据提供数据。

+0

感谢您的回答@YannDuran。我已经看到了Eric的指导并试图实现它,但是我没有得到它的工作,因此我在第一个链接中使用了该技术。据我了解,Eric的解决方案不支持立即编辑,我该如何做到这一点?我还对数据流进行了一些分析,结果发现相关数据不会在相同的响应中获取并返回,应该可以修复。这是你有什么经验吗? (http://social.msdn.microsoft.com/Forums/en-US/lightswitch/thread/cbb87dcd-1648-4445-ae6c-40b2f48399aa/) – 2013-04-25 09:05:59

+0

信不信由你,这是我使用RIA的东西之一服务。这样,我只能返回我需要的列(我正在处理遗留数据库,其中表有时会有几十列)以及任何相关数据。这大大加快了网格。至于编辑,你可以,你只需要添加3个方法添加,编辑和删除属性(或自动,如果你按照惯例命名)。 – 2013-04-25 15:24:15

+0

甜!我已成功切换到Eric的方法并根据本指南中的第2点添加了更新功能http://harshgupta71.blogspot.se/2013/03/wcf-ria-service-combining-two-tables.html。然而,我加载相关的数据出现了新的问题,我搜索但找不到任何东西,我在这里问了一个新问题http://goo.gl/R16zC。 – 2013-04-26 12:39:24

-3

我几乎是这种新艺术的开端,但是正如闫在他的书中所说的那样,而不是一个很好的艺术品,lightswitch就是指向屏幕的。我敢问你是否需要在屏幕上放100行。你甚至都看不到它们。如果你将这个数字减少到20你会减少你的等待时间到1/5。我有同样的问题,现在我在屏幕上使用尽可能少的行数。为了在不影响业务绩效的情况下实现这一目标,我选择在打开屏幕时使用最大数量的参数打开屏幕,而不是必需的。如果其中一个参数不是这种情况下的选项,我将其称为“无”。因此,我可以在网格中使用最少的线数,全面了解屏幕的红色,程序性能和业务性能。

+0

这不是真的回答他的问题......提高性能不应该通过显示较少的数据 – Liel 2013-06-30 10:54:27