【问题标题】:Connection to a distant database [closed]连接到远程数据库[关闭]
【发布时间】:2013-04-08 13:39:42
【问题描述】:

我有一个 WPF 应用程序,其中包含两个数据库(本地和远程)。我将连接到远程数据库并执行一些选择查询(不修改),对于我需要读取、删除和更新许多本地数据库信息。我必须在 Ado.net 和 Linq to sql 之间进行选择。

那么,它们之间的最佳选择是什么?远程 Sql Server 需要哪些配置参数才能接受来自其他 PC 的连接?

【问题讨论】:

  • 这个问题根本没有建设性,您需要详细说明您想要实现的目标以及您已经尝试过的目标。在此处提出模糊问题之前,请尝试阅读有关连接到数据库的文档。
  • Distant 你的意思是REMOTE DB..?你熟悉Linq..吗?如果不是,为什么不使用SqlCommand 对象以及SqlDataClient
  • @Clint 你到底不懂什么
  • 定义“远方”?客户端和数据库之间是否有防火墙?就我个人而言,当我听到“遥远”时,我在想“http api”,意思是:编写两个版本的 DAL(共享一个 interface)——一个讲 ADO.NET,一个讲 http(也许是 WCF,也许不是)。

标签: c# sql-server linq linq-to-sql


【解决方案1】:

我必须在 Ado.net 和 Linq to sql 之间进行选择。

LINQ-to-SQL 基本上是围绕 ADO.NET 的 ORM 包装器。但是,当我听到“远距离”这个词时,我通常会认为直接 ADO.NET 连接不再合适。如果这些盒子位于不同的网络上,或者被防火墙/子网/等隔开,那么最合适的做法是通过网络服务公开您的数据(内部可能使用 ADO.NET或 LINQ-to-SQL,但这完全是一个实现细节)。该 Web 服务可以通过 WCF、ASMX、ServiceStack、手动实现的 REST 或您喜欢的任何其他类型的基于 Web 的访问技术公开。

那么唯一的问题是:在 same 网络上运行时(在您的示例中为“本地”)...是否应该继续使用网络服务(用于代码减少等) ,还是应该有一个直接(ADO.NET / LINQ-to-SQL)连接选项?第一个是没有额外的代码(因为 Web 服务已经存在以支持“远程”客户端);第二个(直接)选项可能一些(有限)场景中具有一些性能优势。

【讨论】:

    猜你喜欢
    • 2012-07-12
    • 1970-01-01
    • 2016-08-05
    • 2013-05-18
    • 2021-03-17
    • 1970-01-01
    • 1970-01-01
    • 2018-02-05
    相关资源
    最近更新 更多