2016-07-27 93 views
0

目前,我们正在一个Excel工作表的内容转换成一个二维数组是这样的:获取Excel范围无N/A值C#

Excel.Range rango = excelSheet.UsedRange; 
object[,] excelData = (object[,])rango.Value2; 

和后来的信息被用于在数据库中存储,但在问题是,在数组内有一些N/A值来自Excel,并在保存到数据库时导致麻烦(我们稍后使用批量插入操作),有什么方法可以在获取范围时替换空字符串的N/A值?我已经尝试循环遍历数组,但这不是可行的,因为我们可以有多达300万条记录,并且它需要很长时间。

在此先感谢。

+3

您在ASP.NET环境中使用Excel Interop吗?这是[坏主意](https://support.microsoft.com/en-us/kb/257757)。 – mason

+0

我不明白,如果没有循环记录集,这是如何实现的。 –

+0

是的,它可以工作,因为服务器安装了Office(它将永远存在),但感谢评论,我将开始搜索正确的方式来做到这一点,并对齐(+1您的意见) – JCO9

回答

0

感谢您的意见,我做的伎俩是这样的:

Excel.Range rango = excelSheet.UsedRange; 
rango.Replace("#N/A",""); 
object[,] excelData = (object[,])rango.Value2; 

希望这可以帮助别人的未来。