连接字符串适用于Entity框架,但在批量时失败

时间:2015-03-31 12:38:23

标签: c# sql entity-framework database-connection sqlbulkcopy

我遇到的问题是,在Web.Config中,我有一个db.database正在使用的连接字符串,这个工作正常,我能够从数据库中检索数据没问题,但是我遇到的问题是当我尝试使用SqlBulkCopy:

using (SqlBulkCopy bulk = new SqlBulkCopy(db.Database.Connection.ConnectionString))
{
    bulk.DestinationTableName = datatable.TableName;
    bulk.WriteToServer(datatable);
}

我正在使用与实体框架正在使用的完全相同的连接,但它失败并且我收到错误消息

Login failed for user 'DatabaseName'.

我似乎无法弄清楚它失败的原因,我用Google搜索并说它是服务器/数据库端的身份验证问题,但是为什么它对db.database有用而不是在使用SqlBulkCopy时?

1 个答案:

答案 0 :(得分:0)

请找到以下它可以帮助您:

尝试直接使用连接而不是框架。

string csDestination =“将连接字符串放到数据库中”;

使用(SqlConnection destinationConnection = new SqlConnection(csDestination)) 使用(SqlBulkCopy bulk = new SqlBulkCopy(destinationConnection)) {      bulk.DestinationTableName = datatable.TableName;     bulk.WriteToServer(数据表); }