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.1和Office2003)
1 插入office2003盘,选择“删除添加程序”(貌似叫这个)——>高级——>
Microsoft office--->Microsoft office Excel ——>从本机运行全部程序(Word, PPT等以此类推)
2 Microsoft office——>office 工具——>MicroSoft Forms 2.0.net可编程支持——>从本机运行全部程序
3 Microsoft office——>office 工具——>智能标记插件——>从本机运行全部程序
4 更新完成,打开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了?
摘自 IT胖子的专栏
补充:Web开发 , ASP.Net ,