在我的新WPF/silverlight应用程序中,是直接连接到我的远程SQL Server (我正在使用linq to sql)更好,还是调用WCF服务并让服务连接到数据库更好?
SQL Server和Win2k8 web服务器都是租用的,并且位于同一位置。如果创建WCF服务,我会在web服务器上运行它,并连接到隔壁的数据库。我不关心重用这个服务的能力,但我关心的是性能。直接从客户端远程调用SQL更好,还是调用服务并让服务执行调用更好。
发布于 2009-11-18 23:30:59
主要出于抽象和安全的目的,如果这个应用程序运行在客户端的异地计算机上(我必须假设它是),那么您应该公开一个WCF服务。这样,您就可以处理安全性,并且永远不会让客户端看到与连接到SQL服务器有关的任何内容。这样,如果您的SQL服务器上发生了一些变化,您不必更新您的应用程序。
至于性能,我会说它会在一定程度上变慢,但在几毫秒的时间内,它应该是非常不可察觉的。
发布于 2009-11-18 23:31:15
如果你打算使用Silverlight (并且想分享一个代码库),最好使用WCF服务来访问你的数据。
发布于 2009-11-18 23:43:36
您通常需要一个web服务,因为SQL Server端口(tcp 1433)在大多数防火墙中都是关闭的。即使你可以贿赂你自己的防火墙管理员来打开它,它仍然会在客户端站点上被阻止。
https://stackoverflow.com/questions/1756784
复制相似问题