vs编写c#程序中出现提示:未能找到类型或命名空间名称

1、错误提示

  对于没有涉及到类库或只在一个项目中中编写程序时,我们一般并不会遇到“未能找到类型或命名空间名称”的提示。因为函数之间都在一个项目中,可以相互查询到。

  但当学会利用类库写程序时,那么类库之间的调用就很容易出现这样的提示。我在观察百度不同的答疑者提供了不同的方法,但是很遗憾都没有很好的解决我的问题。

  2、bug现象

  

  比如在上图中,我编写了一个程序,其中包括4个类库,一个主程序,当然主程序也可以认为是一个类库(个人以为)。其中相互之间存在这样的关系:“图切剖面自动绘制系统”需要引用“FileOp”、“FormSet”、“SectionMap”三个类库,“FormSet”需要引用“SectionMap”、“DataReadAndWrite”两个类库。

  在类库的引用之前往往需要重新生成解决方案,这样才会在内存中出现.dll后缀名的文件,然后引用各个类库(如果不能引用,往往是类库中的类或函数没有添加public修饰符),编写程序后,务必要“重新生成”。”

  如果下方的“错误列表”中出现如下提示,那么恭喜你程序已经运行成功。

      在“重新生成”这一步往往会出现“未能找到类型或命名空间名称”,如果类库之间相互不存在引用,那么你无论重新生成那一个类库都不会出现什么问题,除非程序本身错误,所以程序往往不会提示这个消息。

3、bug分析

   上诉的bug往往是因为类库之间存在调用,比如前面我的程序就出现相互调用,那么这个时候重新生成的顺序就比较重要了。如果我先生成“图切剖面自动绘制系统”,往往就会提示“未能找到类型或命名空间名称”,因为“FileOp”、“FormSet”、“SectionMap”三个类库是引用的,应该提前生成,不然怎么知道类库有没有修改那。

4、bug解决

    如果我们知道引用的顺序,那我们完全可以按照顺序一个一个生成,但是当程序很多,类库之间的引用很复杂就不适用了。经过我的探索,找到了解决的方法。当然也许很多人已经知道了,个人小白,受他人启发解决问题。

  (1)右击 解决方案,找到项目依赖项并打开

(2)在窗口中我们可以看到我们可以为每个项目指定依赖项,也就是你引用的类库,不要多选也不要少选。

(3)打开生成顺序,我们可以检查是否正确,被引用类库在前,引用类库在后,如果二者相互调用你就需要反思一下了。

(4)最后我们只需要重新生成最后的那个主程序的类库即可,错误列表如果有下图提示,恭喜你,程序将不会在提示“未能找到类型或命名空间名称”了。

5、例外bug

 由于小白我是编写arcgis engine程序,有的时候按照上面的操作还会出现上述提示,是因为arcgis engine某些函数要求必须以管理员运行程序才行,但是平常编写程序应该不需要。

6、结语

  希望这篇文章可以对大家编写程序有提示作用,也欢迎大家在下面留言遇到的问题,相互分享去解决问题,成为一名合格的程序员。

 

 

 

 

  • 7
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值