我不太愿意使用 LINQ 将一个数据库表插入到位于另一台服务器上的另一个数据库表(作为 WCF 数据服务)。
假设我在本地数据库上有一个 Item 类,在远程服务器上有相同的 Item 类,并且我想复制所有记录。
是否可以从以下位置执行此操作:-
私有(private) Uri svcUri = new Uri("someurl/WcfDataService.svc"); 实体 = 新实体(svcUri);
......
我知道 LINQ to SQL 主要是类和数据库之间的 1-1 映射,但我听说这是可能的。
最佳答案
您只需构造一个指向正确数据库的连接字符串。该数据库必须具有 EF 期望具有的表。 (该代码看起来像您的代码,但我从未使用过 Uri 作为连接字符串。)
但是,通过源数据库上的存储过程、通过 y=目标的链接数据库来完成会更有效。这是因为,如果通过 WCF 执行此操作,数据必须传输两次:SourceDB -> WCF 服务 -> TargetDB,而使用 SP,它只有一跳:SourceDB -> TargetDB。此外,在 SP 中,它的运行方式几乎与集合操作一样,而 WCF 服务必须一次处理一行。
编辑 - 抱歉:我没有注意到 MySQL 标签。我不知道MySQL是否支持链接数据库,如果不支持请忽略。
关于c# - 使用 WCF 数据服务将一个数据库表复制到另一个数据库表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34201211/