asp.net中操作excel等不存在类型或命名空间名称Office

下午的一个Program中想导入一个EXCEL表,但是先后显示了

1.命名空间Microsoft中不存在类型或命名空间名称Office(是缺少程序集引用吗?)

2. 命名空间Microsoft中不存在类型或命名空间名称Interop(是缺少程序集引用吗?)

很是困扰,经过多方查找,总算搞定,留下笔记以后学习。

 

首先要做的是事情是添加引用(上网下载)

Microsoft.Office.Interop.Excel.dll

Microsoft.Office.Interop.SmartTag.dll

Microsoft.Office.Interop.Word.dll

根据自己的需要添加。

值得注意的是:

 

VS2010,在引用COM组件的时候,出现了无法嵌入互操作类型“……”,请改用适用的接口的错误提示。查阅资料,找到解决方案,记录如下:

选中项目中引入的dll,鼠标右键,选择属性,把“嵌入互操作类型”设置为False

 

这样就应该没有问题了。如果没有问题,就不用看下面了。

 

 

如果还没有解决:

 

1.命名空间“Microsoft”中不存在类型或命名空间名称“Office ”(是缺少程序集引用吗?)

 

方法一(前提你已经安装了.net FrameWork1.1Office2003

 

插入office2003,选择“删除添加程序”(貌似叫这个)——>高级——>  

  Microsoft office--->Microsoft office Excel ——>从本机运行全部程序(Word, PPT等以此类推)

 

2 Microsoft office——>office 工具——>MicroSoft Forms 2.0.net可编程支持——>从本机运行全部程序

  

3 Microsoft office——>office 工具——>智能标记插件——>从本机运行全部程序

 

更新完成,打开visual 2008 添加引用,”C://Program Files//common Files//

  Microsoft Shared//Office10//MSO.DLL,添加”Microsoft.Office.Core“。

 

5 OK

 

 

方法二 直接重装Office2003,按照方法一的步骤来一遍

 

 

2. 命名空间“Microsoft”中不存在类型或命名空间名称“Interop ”(是缺少程序集引用吗?)

   

在完成第一个步骤之后,

   

找到"引用",右键——>添加引用----->microSoft.Office.Interop.Excel 11(12)(.Net里面)导入即可。

 

 再看看,是不是OK了?

上一篇:详解Twitter开源分布式自增ID算法snowflake,附演算验证过程


下一篇:C# 操作Excel2003