2014-10-01 71 views
0

我想插入數據到數據庫表使用sqlBulkCopy它工作正常的數據插入,然後我想查詢我的數據,但是當我引用更新後的表,我得到錯誤:對象爲null。我能看到使用實體結構,但此對象的值這個表是空:sqlbulkcopy後表對象爲空插入

 using (var cn = new AdventureWorksEntities()) 
     { 
      cn.Database.ExecuteSqlCommand("TRUNCATE TABLE tmpTable"); 
      sqlConnectionString = cn.Database.Connection.ConnectionString; 
     using (SqlBulkCopy bulkCopy = new SqlBulkCopy(sqlConnectionString)) 
      { 
      bulkCopy.DestinationTableName = "dbo.tmpTable"; 
      try 
      { 
       // Write from the source to the destination. 
       bulkCopy.WriteToServer(table); 
      } 
      catch (Exception ex) 
      { 
       //ErrorHandler 
      } 
      } 
     // Now I am trying to get data from the updated table: 

      var uniqueItemIDs = cn.tmpTable.Select(m => m.ItemID).Distinct(); 
     // And from the line above I am getting the Error: tmpTable is null. 
     } 

其他表(不是使用SqlBulkCopy的更新)的罰款和訪問。有人可以幫忙嗎?

+0

你可以在* SqlBulkCopy的東西之前訪問'cn.tmpTable' *嗎?我認爲該表不只是你的EF(?)數據上下文的一部分。 – Blorgbeard 2014-10-01 23:16:08

+0

是的,我可以。我也可以從edmx圖中看到它。 – 2014-10-01 23:20:58

回答

1

我相信問題是你需要刷新你的數據庫上下文。在插入之前打開數據庫上下文。