2015-03-25 679 views
1

我需要从Excel文件存储临时表(设备临时表)中读取数据,并将所有数据复制到此临时表中。这些记录在实际表(userDevices)中更新,并且以前的输入需要被删除。如何在EF6中使用临时表

我在我的项目中使用了EF6。因此我已将实体“Device”映射到“userDevices”表。我将如何利用实体框架将数据插入临时表中,然后将其替换为实际表中的数据。

存储过程是唯一的选择?或者我可以利用EF来做同样的事情吗?

+0

不能读取excel文件并将数据保存在DataTable或List中,然后将此内存项映射到Device表? – wonderbell 2015-03-25 05:59:02

+0

不需要。要求是先将它保存在临时表中。因为数据会非常大。此外,我需要把所有交易 – iGod 2015-03-25 08:31:51

+0

如果你的临时表必须存储数据,那么为什么它不能是一个总是存在的表,其数据可以被视为临时表。结构(否和列的类型)是否改变? – 2015-03-29 17:46:09

回答

4

使用临时表的唯一方法是在存储过程中完成它们的创建,操作,插入和最终数据提取。一旦这些设置,然后EF可以打电话和利用它们。

如同EF在生成表映射时不浏览tempDb模式;因此无论会话(# vs ##)状态如何,都不能使用任何临时表;由于临时表本身的性质。