如何在linq中访问表

如何在linq中访问表,linq,Linq,我需要克隆存在于不同服务器中的数据库表。 e、 g.在服务器A上有一个名为EmployeeDataBase的数据库,它有一个表t1,我需要将该表复制到服务器B上名为EmployeeDataBase的数据库中。 如何使用linq查询实现这一点 我的应用程序使用linq创建实体 谢谢如果表具有相同的定义,您可以使用相同的映射,只需使用适当的连接字符串创建不同的上下文即可 var ctxSource = new EmployeeDataBaseContext("[source connection]

我需要克隆存在于不同服务器中的数据库表。 e、 g.在服务器A上有一个名为EmployeeDataBase的数据库,它有一个表t1,我需要将该表复制到服务器B上名为EmployeeDataBase的数据库中。 如何使用linq查询实现这一点

我的应用程序使用linq创建实体


谢谢

如果表具有相同的定义,您可以使用相同的映射,只需使用适当的连接字符串创建不同的上下文即可

var ctxSource = new  EmployeeDataBaseContext("[source connection]");
var ctxDestination = new  EmployeeDataBaseContext("[destination connection]");

ctxDestination.t1.InsertAllOnSubmit(ctxSource.t1.ToList());
ctxDestination.SubmitChanges();

检查所需的构造函数。

如果表具有相同的定义,则可以使用相同的映射,只需使用适当的连接字符串创建不同的上下文即可

var ctxSource = new  EmployeeDataBaseContext("[source connection]");
var ctxDestination = new  EmployeeDataBaseContext("[destination connection]");

ctxDestination.t1.InsertAllOnSubmit(ctxSource.t1.ToList());
ctxDestination.SubmitChanges();

检查您需要的构造函数。

实体框架不是解决此类问题的合适技术。您最好使用原始ADO.Net。也许SqlBulkCopy可以使用:

实体框架不是解决此类问题的合适技术。您最好使用原始ADO.Net。也许SqlBulkCopy会有用:

让我详细说明一下:我有一个用于服务器名称的文本框,连接所需的用户名和密码。当用户填写完这些文本框后单击下拉列表时,我会检查连接并加载数据库下拉列表中的所有数据库。现在,用户从给定下拉列表中选择源数据库。当用户在特定数据库上选择时,该数据库的所有不同行都应被删除在其他下拉列表中填充。这样您就不必预先知道数据库模式ADataContext lnqDC=new System.Data.Linq.DataContext(“数据源=“+serverName+”;初始目录=master;用户Id=“+serverUserName+”;密码=“+serverPassWord+”;”;var DatabaseNames=lnqDC.ExecuteQuery(“从sys.databases中选择[name”).AsEnumerable();我这样做是为了列出服务器的所有数据库。这完全是另一个问题。我完全按照你在第一个答案中所说的做了。让我详细说明一下:我有一个服务器名称的文本框,连接所需的用户名和密码。当用户填写完这些文本框后单击下拉列表时,我会检查连接并加载数据库下拉列表中的所有数据库。现在,用户从给定下拉列表中选择源数据库。当用户在特定数据库上选择时,该数据库的所有不同行都应被删除在其他下拉列表中填充。这样您就不必预先知道数据库模式ADataContext lnqDC=new System.Data.Linq.DataContext(“数据源=“+serverName+”;初始目录=master;用户Id=“+serverUserName+”;密码=“+serverPassWord+”;”;var DatabaseNames=lnqDC.ExecuteQuery(“从sys.databases中选择[name”).AsEnumerable();我这样做是为了列出服务器的所有数据库。这完全是另一个问题。明白了。我完全按照你在第一个答案上说的做了。