2011-04-13 80 views
0

我决定学习Silverlight,但除了知道如何编写应用程序之外,我还需要知道如何连接到远程服务器以获取数据。我已经看到了.NET中的一些数据库连接的例子,但是我很困惑,应该走哪条路。如何连接到Silverlight应用程序中的远程SQL数据库?

我的一般问题是SL应用程序如何连接到远程服务器?如果您愿意,您可以发布主观响应,但是这个问题应该是客观的,因为我想了解创建到远程SQL服务器的连接的可能方式。

这些(WCF,XML,Ajax,Linq to SQL,实体框架,数据访问提供程序等)在哪里派上用场?如果有人想建立健全和安全的连接,那些(或其他)哪一个是必须学习的?我想抓一本书和学习东西,但在此之前,我需要知道我需要投入什么。

回答

1

作为浏览器技术的Silverlight不直接连接SQL Server。大多数SL应用程序都会向服务器说明HTTP(REST,SOAP,POX) - 其他选项可用,但比“大”.NET Framework更受限制。

可能最适合初学者的最简单方法是.NET RIA Services。它允许简单暴露由数据库构建的各种模型(LINQ to SQL,实体框架等)。如果你正在与SQL Server交谈,LINQ to SQL在模型方面是最简单的,尽管EF也很好(一个更大,更复杂的锤子)。 RIA Services允许您通过Web服务从模型中公开表格对象,并且Silverlight客户端可以通过LINQ查询消费数据,这些查询被远程返回到服务器(非常高效 - 查询条件位于客户端上,而数据过滤它发生在服务器上,并且所有的编译时类型都是针对模型进行检查的,所以很难对数据类型进行篡改并查询或暴露给SQL注入攻击)。 RIA Services还将允许您在两端应用各种安全选项和数据验证,并且如果您进入较低级别并执行RIA无法做到的事情,则可以使用WCF的全部功能。

相关问题