代码之家  ›  专栏  ›  技术社区  ›  Alastair Pitts

正在用数据更新Silverlight。JSON还是WCF?

  •  1
  • Alastair Pitts  · 技术社区  · 16 年前

    我们将在ASP.NET MVC网页上使用自定义Silverlight 4.0控件来显示数据库中的数据,我们想知道最有效的方法是什么?我们将返回高达100K条记录的值(每条记录有2个属性)。

    我们有一个测试使用从javascript到Silverlight的HTML桥。首先,我们在MVC Web应用程序中执行对控制器操作的POST请求,并返回JSON。然后将这个JSON传递给Silverlight,在那里解析它并更新UI。这看起来相当慢,存储过程(select)大约需要3秒,浏览器中的整个更新大约需要10-15秒。

    从网络上看,WCF似乎是另一个选择,但没有使用过,我不确定它的能力或适用性。

    有人有经验或建议吗?

    1 回复  |  直到 16 年前
        1
  •  2
  •   Koynov    16 年前

    你绝对应该考虑改变你的方法。这不应该这么复杂。WCF是一种可能的解决方案。我相信你会有更好的表现。

    • 它的设计目的是通过导线传输数据。Web服务通常被认为是向您的Silverlight应用程序提供数据的“正确方法”。WCF服务绝对是更可配置的。
    • 另一个有利于Web服务的观点是,这种方法比您应用的方法更简单。您不必在JSON中序列化,然后在JavaScript对象中解析,然后将它们传递给Silverlight。
    • 使用WCF移植和继续开发非常容易。
    • 最后但同样重要的是,您的代码将更加可读和可维护。

    在您的案例中,性能似乎至关重要,因此您可以查看一下 here for compraison .

    总之,我的建议是考虑改变你的方法。WCF服务似乎是可能的解决方案。

    希望这有帮助。

    推荐文章